MUI,picker选择器的坑

picker 省市区的三级联动 ,选中默认值,必须得加上延时才行。

cityPicker.pickers[0].setSelectedValue(130000);
setTimeout(function(){
    cityPicker.pickers[1].setSelectedValue(130200);
},100);

如果你第二个设置默认值,不加延时定时器,那么就会设置失败

原因是:选择完第一个第二个效果还没显示完,所以不选择,设个延时就好了;【这句话是从别的地方复制来的】

这里最好的办法就是利用for循环加延迟

//layer:选择器几个层级
for( var i=0; ifunction(){
        var index = i;
        setTimeout(function(){
            cityPicker.pickers[index].setSelectedValue(value);
        },100*index );
    })(i)
}

这里至于为什么要写成闭包的形式,其实我也不是很清楚,但是这样写会没用问题

你可能感兴趣的:(mui框架)