查看了它的监听,并不是在初始化的时候定义句柄的
反而是需要用户在对象后面加个on事件
$("#city-picker1").citypicker({
}).on('cp:updated', function () {
console.log('updated', $(this).val());
});
citypicker里面的参数 只有省市区{
province: '江苏省',
city: '常州市',
district: '溧阳市'
},没有别的参数。
源码了设置了触发cp:updated事件,所以就在后面监听好了。
切换省份之后回调的值也是在html里通过data-render定义的,很奇怪的设定。
<span style="position: relative;display: inline-block;width: 160px;">
<input readonly id="city-picker1" type="text" style="padding-left: 10px;" data-render="code" data-spancss='{"height": "33px","line-height": "30px","border-radius":"4px"}' data-toggle="city-picker" placeholder="查找省份寺庙" data-level="province">
</span>
data-level设置的是支持几个层级 ,province是只显示省份,city,district
因为span的样式和placeholder不对齐,所以我加了个自定义的spancss
源码里加个设置即可:
public/assets/libs/fastadmin-citypicker/dist/js/city-picker.js
95行
var $select = this.$dropdown.find('.city-select');
下面加
var spanCss = this.$element.data('spancss') || '';
if(spanCss) {
this.$textspan.css(spanCss);
}