distpicker.js 三级联动,修改地址时设置默认值
distpicker.js 三级联动,修改地址时设置默认值
做java 后台的,半路出家 ,想做个自己的商城,卖点东西想着挣点外快,用到了js的三级联动,在网上找了很多,没找到解决的方法。只能想办法自己解决,想着留个备份,所以处女做作给js 啦~~主要考虑遍历、触发事件和设置option的selected 属性。言归正传以下是代码
html
<div data-toggle="distpicker" class="address_content" id="address">
<div class="col-sm-9 col-xs-9">
<select class="selectpicker form-control" data-province="―― 省 ――"
id="receiverState" name="addressProvince">
</select>
<select class="selectpicker form-control" data-city="―― 市 ――"
id="receiverCity" name="addressCity">
</select>
<select class="selectpicker form-control" data-district="―― 区 ――"
id="receiverDistrict" name="addressDistrict">
</select>
</div>
</div>
js:
下面这个不知道为什么必须要加 否则不会百分百复现,至于原因 还没找到,有大神请指点一下
$("#address").distpicker('destory');
$("#address").distpicker({
province: province1,
// Defines the initial value of city.
city: city1,
// Defines the initial value of district.
district: district1
});
///
下面是默认值的实现province1 city1 district1 这三个值为后台传入
$("#receiverState").find("[data-text="+province1+"]").attr("selected",true);
$("#receiverState").trigger("change");
$("#receiverCity").find("[data-text="+city1+"]").attr("selected",true);
$("#receiverCity").trigger("change");
$("#receiverDistrict").find("[data-text="+district1+"]").attr("selected",true);
完