我有一个指令,使用jquery“multiselect”插件来增强任何< select>属性为“filtermultiselect”。我的问题是select通过ajax调用填充,我不希望指令运行,直到< select>已填充。我修改了我的指令,如下所示Angularjs:调用指令方法作为控制器的回调
angular.module('filtermultiselectDirective', [])
.directive('filtermultiselect', function() {
return {
restrict: 'A',
link: function($scope, element, attrs) {
$scope.$on('createMultiSelectFilters', function (element) {
element.multiselect({
disableIfEmpty: true,
buttonWidth:'100%',
enableFiltering: true,
includeSelectAllOption: true,
enableCaseInsensitiveFiltering: true
});
});
}
}
});
,并从我的控制,我只是用
$scope.$broadcast('createMultiSelectFilters');
的回调。然而,不起作用,我得到“element.multiselect不是一个函数”。
对新手有任何建议吗?
感谢您的反馈意见,您指出了我的正确方向。我已经发布了下面的实际解决方案。 –