我正在尝试使用我的应用程序中的指令来实现 jQuery 多选插件。这是选择元素:
<select multiple
ng-model="data.partyIds"
ng-options="party.id as party.name for party in parties"
xs-multiselect="parties">
</select>
模型parties
模型通过 $http 加载。多选插件解析option
里面的元素select
并生成漂亮的多选。
有没有办法检测select
元素何时填充了选项,以便我可以告诉多选插件更新其数据?
这是我的指令:
machineXs.directive("xsMultiselect", function() {
return {
restrict: "A",
require: '?ngModel',
link: function(scope, element, attrs, ngModel) {
element.multiselect().multiselectfilter();
scope.$watch(scope[attrs["xsMultiselect"]], function() {
// I tried watching but it doesn't help
element.multiselect('refresh');
element.multiselectfilter("updateCache");
});
}
}
});