实现动态下拉框遇到问题,欢迎指点
<%@ page contentType="text/html; charset=GBK"%>
<%@taglib uri="struts-bean" prefix="bean"%>
<%@ taglib uri="/WEB-INF/tld/struts-html.tld" prefix="html" %>
<%@ page import="java.util.*" %>
<link rel="stylesheet" href="<%=request.getContextPath()%>/page/css/screen.css" type="text/css">
<% List acTypeList = (List)request.getAttribute("acTypeList");
// String errorStr = (String)request.getAttribute("error");
//if(errorStr != null && errorStr.equals("error")){out.print("此余额设置已存在");}
com.peak.riskscan.punishment.model.PunishmentAmt pa = (com.peak.riskscan.punishment.model.PunishmentAmt)request.getAttribute("acBalanceSet");
String action ="addSavePunishment.do";
boolean modifyflag = false;
if(pa!=null&&pa.getModelName()!=""){
modifyflag = true;
action = "editSavePunishment.do";
}
int j=acTypeList.size();
System.out.println(j);
%>
<p class="title" align="center"><%if(modifyflag){ %>修改<%}else{ %>新增<%} %>设置</p>
<form method="post" action="<%=action %>" name="theform" onsubmit="return check();">
<table class="simpleform"> <tr>
<td>
复核差错与风险预警名(<span class="star">*</span>):
</td>
<td>
<select name="modelName">
<%for(int i=0;i<acTypeList.size();i++){%>
<option <% com.peak.riskscan.punishment.model.PunishmentModel bean = (com.peak.riskscan.punishment.model.PunishmentModel) acTypeList.get(i);%> value="<%=bean.getModelName() %>"><%=bean.getModelDescribe() %></option><%}%>
</select>
</td>
</tr>
<tr>
<td>
处罚金(<span class="star">*</span>):
</td>
<td>
<input type="text" name="punishmentAmt" maxlength="20" size="15" <%if(modifyflag){%> value=<%=pa.getPunishmentAmt() %><% } %>>
</td>
</tr> <tr>
<td colspan="2" align="center">
<input type="submit" name="submitbutton" value="确定" title="所输区域记录内容添加至数据库">
<input type="reset" value="重置"/>
<input type="button" value="返回" onclick="history.back();" title="返回上一页面">
</td>
</tr>
</table>
</form><p>
<p class="pagetips">
页面提示:<br/>
<li>输入余额标准设置信息,带*为必须输入的内容。
<li>点击"确定"按钮,将所输设置记录内容添加至数据库。
<li>点击"返回"则返回上一页面。
<script language="javascript">
function check(){
if(document.theform.punishmentAmt.value==''){
alert("处罚金额不能为空");
return false;
}
}
</script>
下拉框显示为null,怎么回事啊?我测试过了.list.size()有值啊?请高手指教
<%@ page contentType="text/html; charset=GBK"%>
<%@taglib uri="struts-bean" prefix="bean"%>
<%@ taglib uri="/WEB-INF/tld/struts-html.tld" prefix="html" %>
<%@ page import="java.util.*" %>
<link rel="stylesheet" href="<%=request.getContextPath()%>/page/css/screen.css" type="text/css">
<% List acTypeList = (List)request.getAttribute("acTypeList");
// String errorStr = (String)request.getAttribute("error");
//if(errorStr != null && errorStr.equals("error")){out.print("此余额设置已存在");}
com.peak.riskscan.punishment.model.PunishmentAmt pa = (com.peak.riskscan.punishment.model.PunishmentAmt)request.getAttribute("acBalanceSet");
String action ="addSavePunishment.do";
boolean modifyflag = false;
if(pa!=null&&pa.getModelName()!=""){
modifyflag = true;
action = "editSavePunishment.do";
}
int j=acTypeList.size();
System.out.println(j);
%>
<p class="title" align="center"><%if(modifyflag){ %>修改<%}else{ %>新增<%} %>设置</p>
<form method="post" action="<%=action %>" name="theform" onsubmit="return check();">
<table class="simpleform"> <tr>
<td>
复核差错与风险预警名(<span class="star">*</span>):
</td>
<td>
<select name="modelName">
<%for(int i=0;i<acTypeList.size();i++){%>
<option <% com.peak.riskscan.punishment.model.PunishmentModel bean = (com.peak.riskscan.punishment.model.PunishmentModel) acTypeList.get(i);%> value="<%=bean.getModelName() %>"><%=bean.getModelDescribe() %></option><%}%>
</select>
</td>
</tr>
<tr>
<td>
处罚金(<span class="star">*</span>):
</td>
<td>
<input type="text" name="punishmentAmt" maxlength="20" size="15" <%if(modifyflag){%> value=<%=pa.getPunishmentAmt() %><% } %>>
</td>
</tr> <tr>
<td colspan="2" align="center">
<input type="submit" name="submitbutton" value="确定" title="所输区域记录内容添加至数据库">
<input type="reset" value="重置"/>
<input type="button" value="返回" onclick="history.back();" title="返回上一页面">
</td>
</tr>
</table>
</form><p>
<p class="pagetips">
页面提示:<br/>
<li>输入余额标准设置信息,带*为必须输入的内容。
<li>点击"确定"按钮,将所输设置记录内容添加至数据库。
<li>点击"返回"则返回上一页面。
<script language="javascript">
function check(){
if(document.theform.punishmentAmt.value==''){
alert("处罚金额不能为空");
return false;
}
}
</script>
下拉框显示为null,怎么回事啊?我测试过了.list.size()有值啊?请高手指教
<select name="modelName">
<%
for(int i=0;i <acTypeList.size();i++){
com.peak.riskscan.punishment.model.PunishmentModel bean =(com.peak.riskscan.punishment.model.PunishmentModel) acTypeList.get(i);
%> <option value="<%=bean.getModelName()%>"> <%=bean.getModelDescribe()%> </option> <%}%>
</select>
int j=acTypeList.size();
System.out.println(j);
j=133啊,
并不能保证PunishmentModel里面的description不为空,
请再检查一下代码,确保每个PunishmentModel的description不为空
------------------------------------
使用标签绑定数据源呀!要是数据来源是session工厂那就自己写标签吧!
我一般用这个。
<select name="secretLev">
${cp:getItems("CDSecretLev")}
</select>public static String getItems(String webComName){
到底怎么写自己想
}
${cp:getSelect("SelectName","CDSecretLev")}
public static String getSelect(String webComName,String webComData){
到底怎么写自己想
}
List list = null;
try {
sqlMap.startTransaction();
list = sqlMap.queryForList("getPunishmentByModel",null);
sqlMap.commitTransaction();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try {
sqlMap.endTransaction();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return list;
}
框架顶死了,struts+ibatis架构,List list=devsampleDao.query(dvsample);,后怎么传到javabean,我要在jsp页面显示javabean信息的