多级联动

前端jsp页面代码:

城市博物馆列表

<select name="erea" class="org" style="width:162px">
<option value="">所在区域</option>
<c:forEach items="${cityList}" var="city" varStatus="row">
<option value="${city.id}" <c:if test="${city.id eq erea}">selected</c:if> >${city.shortname}</option>
</c:forEach>
</select>
<select name="collectionUnit" id="museum" class="select select-box inline" style="width:162px;">
<option value="">收藏单位</option>
<c:forEach items="${musList}" var="mus" varStatus="row">
<option value="${mus.id}" <c:if test="${mus.id eq mipOpenCulturalrelicInfo.collectionUnit}">selected</c:if> >${mus.shortname}</option>
</c:forEach>
</select> 

js代码:(通过class定位;如果多级,就在需要的select中添加class="org"就可以了)

<script type="text/javascript">
$(function(){
$('.org').change(function(){
var pid=$(this).val();
var obj=$(this).next('select');
var first=obj.children().first().clone();
$.ajax({
url:"/admin/back/oCCollection/sltMuseum.do",
data:{parentId:pid},
type:"POST",
datatype:"json",
success:function(msg){
obj.empty().append(first);
for(var i in msg){
obj.append("<option value="+msg[i]['id']+">"+msg[i]['shortname']+"</option>");
}
}
});
});
});
</script>

后台代码:(springMVC,Spring,hibernate)

@RequestMapping("/sltMuseum.do")
@ResponseBody
public List<MipOrganization> getCollectionInfo(@RequestParam(name = "parentId") String id) {
String hql = "";
if (!MyString.isEmpty(id)) {
hql = "from MipOrganization where status>0 and isdelete=0 and parentId=" + id;
}else {
hql = "from MipOrganization where 1 <> 1";
}
List<MipOrganization> museumList2 = (List<MipOrganization>) mipOrganizationService.queryByHql(hql,
Tools.getMap());
return museumList2;
}

数据库表结构注意:

定义字段pid存储上一级的id

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值