如何在加载完jsp页面后,下拉框的值从数据库中读取,而不是写在jsp页面中

js中的代码
function audit(){
var audit=document.getElementById("audits");
var selectIndex = audit.selectedIndex;
var selectText = audit.options[selectIndex].text;
var divs = document.getElementsByTagName( "DIV");
//alert(document.getElementsByName(audit.value)[0].title);
for(var i=0;i<divs.length;i++){

if(divs[i].id==audit.value){
alert("已经选中该选项!");
return;
}
}
AddElement(audit.value,selectText);
}

jsp中的代码
<table class="bluebkg" width="100%" align="left">
<tr>
<td align="left">
<select id='audits' name="audits" sine="15" style="WIDTH:140px" tabindex="12">
</select>
<input align="left" type="button" id="addaudit" value="添加审核人" onclick="audit();">
</td>
<td align="left"></td>
</tr>
</table>

第1个回答  2012-06-28
jsp 中如果要使用select html组件显示数据库中的某个数据一般可以通过一下形式完成。
1 用户首先提交一个请求到控制器(Servlet,Acton等)。
2 控制器根据请求调用服务器——>业务层——>DAO层(数据访问层)。
3 控制器得到目标数据库后,可以根据具体情况将数据存入作用域中(一般为request或则session)。定位到要显示数据的jsp页面。
3 jsp页面中使用自定义标签从作用域中取出数据并填充select 子元素的option 的属性value值即可
如:从dao中获得数据存放在request域中 ,key键为 examine, 类型是List,List对象存储从数据表中得到的所有审核人信息,包括审核人姓名,及审核人id,在jsp应如下使用:
<select id='audits' name="audits" sine="15" style="WIDTH:140px" tabindex="12">
<c:forEach items="${examine}" var="obj">
<option value ="${obj.examineId}">${obj.examineName}
</c:forEach>
</select>
注:obj.examineId 是获取对应数据库中审核人表的主键,examineName 审核人姓名,应有一个实体bean 和 审核人表对应,obj.XXX 就是访问实体bean对象的属性.........

DAO 中如果抛开任何ORM框架,无非直接使用jdbc操作数据库返回操作数据库的结果就行了。
如执行select 查询语句返回一个封装数据库表的ResultSet 结果集接口类型对象,此对象是对一个查询表的映射,从结果集中遍历结果集中的记录行封装成某个java对象(实体Bean对象),这个对象返回到web层,在jsp中就可以使用它访问它的属性,比如用这个对象的某个属性填充一个下拉式列表框............

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网