JSP下拉框读取数据库内容问题

JSP下拉框读取数据库内容问题,第1张

jsp页面可以利用Ajax来获取数据库数据来:

在第一级列表的onchange事件中编写:

//投诉信息来源信息级联

function getTsFromDescribe(ts_describe){

var tsfrom = $("#t_tsfrom").val()

var tstsFrom = $("#ts_tsFrom").val()

Ext.Ajax.request( {

url : '${ctx}/complaints/complaints!getTsFrom.action',

params : {

tsfrom : tsfrom//通过json形式将前台每次获取到的值传递给后台

},

success : function(response) {

var json = Ext.util.JSON.decode(response.responseText)

if (json.success) {

var data = json.<strong>cmList</strong>

if ("" == data) {

alert("请选择投诉类型")

inputForm.t_tsfrom.focus()

$("#ts_tsFrom").empty()//每次需要将上一次的数据进行清空

} else {

$("#ts_tsFrom").empty()

//对获取到的数据进行迭代

for ( var i = 0i <data.lengthi++) {

var id = data[i]

var name = data[i]

$("#ts_tsFrom").append(

"<option value='" + id + "'>" + name + "</option>")

}

dwr.util.removeAllOptions('tstsFrom')

dwr.util.addOptions('tstsFrom', data)

}

}

}

})

}

后台返回数据:

public void getTsFrom() throws Exception {

HttpServletResponse response = ServletActionContext.getResponse()

String ts_names = tsfrom

List<CustomManage>list = complaintsmanager.getTsDescribe(ts_names)

response.setContentType("text/javascript")// 后台控制的代码

PrintWriter writer = response.getWriter()

// 将得到的list集合转为JSON对象传给前台处理

JSONArray j = JSONArray.fromObject(list)

writer.println("{'success':true,'<strong>cmList</strong>':" + j.toString() + "}")

}

jsp中把数据库全量查询后填充select列表:

举例说明:

<table>

<tr>

<td width="400px" align="left">入学批次:<SELECT NAME="grade"

id="grade" onchange="refreshEduLevelAndSpecialAjax()"> //选择入学批次会刷新层次和专业

<OPTION VALUE="0">

--请选择--

<c:forEach items="${gradeInfo}" var="gradeInfo">

<OPTION VALUE="${gradeInfo.gradeName}">${gradeInfo.gradeName}

</c:forEach>

</SELECT></td>

<td width="400px" align="left">统考课程:<SELECT

NAME="uniExamCourseId" id="uniExamCourseId">

<OPTION VALUE="0">

--请选择--

<c:forEach items="${unifiedExamCourseList}" var="uniExamCourse">

<OPTION VALUE="${uniExamCourse.id}">${uniExamCourse.uniExamCourseName}

</c:forEach>

</SELECT></td>

</tr>

<tr>

<td colspan="2" id="refreshEduLevelAndSpecialAjax"> //设置ID,用于填充层次和专业的下拉框

<table>

<tr>

<td width="400" align="left">层 次:<SELECT

NAME="eduLevelId" id="eduLevelId"

onchange="refreshSpecialAjax()"> //选择层次后刷新专业

<OPTION VALUE="0">--请选择--</OPTION>

<c:forEach items="${educationLevel}" var="educationLevel">

<OPTION VALUE="${educationLevel.id}">${educationLevel.educationLevelName}

</c:forEach>

</SELECT></td>

<td width="400" align="left" id="refreshSpecialAjax">专业:<SELECT//设置ID,用于填充专业的下拉框

NAME="specialId" id="specialId">

<OPTION VALUE="0">--请选择--</OPTION>

<c:forEach items="${specialList}" var="special">

<OPTION VALUE="${special.id}">${special.specialName}

</c:forEach>

</SELECT></td>

</tr>

</table>

</td>

</tr>

</table>

java后台通过dao接口获取specialList的值,并且保存到session即可。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6746285.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存