在使用下拉插件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);