欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

下拉框联动(二级联动)

程序员文章站 2024-02-13 16:56:28
...
效果:
[img]http://dl.iteye.com/upload/attachment/0074/4173/3092260e-4080-3cf7-af6e-256363f00e44.png[/img]

前台页面:


<tr class="mlist_table_con">
<td width="200px" style="text-align: right;" class="p20" nowrap>频道类型:</td>
<td width="300px" style="text-align: left;">
<select name="station.stationType" onchange="getSchoolBychannelType(value)">
<option value="-1">--请选择频道类型--</option>
<option value="1">平台频道</option>
<option value="2">学校频道</option>
</select>
</td>
</tr>



js代码:

<script type="text/javascript">
var getSchoolBychannelType = function(type) {
if(type==-1) {
$("#province").html('<option value="-1">--选择频道类型--</option>');
return ;
}
var url = '<%=basePath%>manage/live/station/getSchool';
$.post(url,{stationType:type},function(data) {
$("#province").html(data);
},'html');
}
</script>


联动的下拉框:

<tr class="mlist_table_con">
<td width="200px" style="text-align: right;" class="p20" nowrap>所属学校: </td>
<td width="300px" style="text-align: left;">
<select name="schoolId" id="province">
<option value="-1">选择学校</option>
</select>
</td>

</tr>


struts2 action配置:

<!--添加电视台页面频道类型与学校二级联动 -->
<action name="getSchool" class="stationAction" method="getSchoolByStation"></action>



实现方法:

/**
* 通过电视台类型获取学校
*
* @return 处理结果
* @throws IOException
*/
@SuppressWarnings("unchecked")
public String getSchoolByStation() throws IOException {
IListModel listModel = new ListModel(pageSize, currentPage);
StringBuffer sb = new StringBuffer();
if (stationType < 0) {
sb.append("<option value=\"-1\">-- 选择学校 --</option>");
} else if (stationType == 1) {
sb.append("<option value=\"-1\">-- 没有可选的平台频道 --</option>");
} else {
stationService.getNoUsedShcool(MacroDefine.UseFlag.IN_USED,
listModel);
schoolList = listModel.getSource();
if (schoolList != null && schoolList.size() > 0) {
for (School school : schoolList) {
sb.append("<option value=\"")
.append(school.getSchoolId() + "\">")
.append(school.getSchoolName() + "</option>");
}
} else {
sb.append("<option value=\"-1\">-- 选择学校 --</option>");
}
}
super.responseWrite(sb.toString());
return NONE;
}