select 动态添加 地区下拉并显示层级关系

前端:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<!--     此处省略js样式文件     -->
</head>
<script type="text/javascript">
$(document).ready(function(){
        $.post('getListAreaMgt.jhtml',{parentId,parentId},function(data){
            var ary = new Array();
            $(".xzqy").empty();
            $(".xzqy").append('<option value="">'+"--请选择--"+'</option>');
            if(data!=null){
                for(var i=0;i<data.length;i++){
                    $(".xzqy").append('<option value="'+data[i].id+'" >'+data[i].name+'</option>');
                }
            }else{
                alert("数据加载错误!");
            }   
        });
});
</script>
<script type="text/javascript">
$(".xzqy").bind("change",function(){
            var dataname = $(this).val();
            $.post("",{"dataname":dataname},function(data){
                if(data){
                    layer.msg("修改成功");
                   
                }else{
                    
                }
            })
        });
</script>
<body><div id="forlogin">
<form id="inputForm" name="inputForm" action="" method="post">
      <table  class="input">
         <tr>
          <th>行政区域:</th>
          <td>
                  <select id="xzqy" name="" class="xzqy" >
                      
                  </select>
          </td>
        </tr>
        <tr>
          <td  align="left" style="padding-left:160px;"><input type="submit" value="提交" class="submit" /></td>
        </tr>
      </table>
</form>
</div></body>
</html>

controller:调用工具类的方法

 

下面是工具类:
public class diguitree {

    /*@RequestMapping("getAreaData")
    public Map<String, Object> getAreaData(Long id) {
        Map<String, Object> map = new HashMap<>();
        try {
            Area province = dao.findProvince(id); //查询出一个省
            if (province != null) {
                List<Area> citys = dao.findChildren(province.getId());//查询省下面的所有市
                digui(citys); //调用递归算法查询市以下的区县    可以考虑是否有乡镇村等下级
                province.setChildren(citys);
            }
            map.put("data", province);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return map;
    }*/

    /*public void digui(List<Area> area) {
        List<Area> list= new ArrayList<>();
        for (Area c : area) {
            retList = dao.findChildren(c.getId());
            if (list.size() > 0) {
                c.setChildren(retList);
                digui(list); //循环调用自己
            }
        }
    }*/
}

n
注意:没有把实体类加上:其中有可以参考的地方,我用这种方法写过,后来使用插件改良:

注意get,set 方法试题类下一级的值,有层级关系。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值