在使用下拉插件selectpicker的时候,有时候会默认显示从服务器传过来的数据,但是常规操作下来发现没啥乱用, 后来考虑到加载的顺序上,我试着用了setTimeout(),果然 ok了; 下面上代码
html:
<div class="col-sm-10">
<select name="pre_areas" multiple class="selectpicker" data-live-search="true" id="pre_areas" ng-model="preferential.pre_areas" ng-options="key as value for (key,value) in areas">
<option value=" ">--请选择--</option>
</select>
<p ng-show="!myForm.pre_areas.$pristine && myForm.pre_areas.$invalid" class="help-block">不能为空</p>
</div>
js:
var area = [];
var pre_areas = $scope.preferential.pre_areas;
for (var n in pre_areas) {
ar = 'string:'+pre_areas[n];
area.push(ar);
}
setTimeout(function(){ $('#pre_areas').selectpicker('val', area).trigger('change')},300);