picker 省市区的三级联动 ,选中默认值,必须得加上延时才行。
cityPicker.pickers[0].setSelectedValue(130000);
setTimeout(function(){
cityPicker.pickers[1].setSelectedValue(130200);
},100);
如果你第二个设置默认值,不加延时定时器,那么就会设置失败
原因是:选择完第一个第二个效果还没显示完,所以不选择,设个延时就好了;【这句话是从别的地方复制来的】
这里最好的办法就是利用for循环加延迟
//layer:选择器几个层级
for( var i=0; i<layer; i++ ){
(function(){
var index = i;
setTimeout(function(){
cityPicker.pickers[index].setSelectedValue(value);
},100*index );
})(i)
}
这里至于为什么要写成闭包的形式,其实我也不是很清楚,但是这样写会没用问题