在第一级列表的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即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)