我正在创建一个自定义属性,它将角度 ui 选择数据发送到服务器。但是,在我的自定义指令中,我需要绑定到on-select
事件来实现这一点。
这是我的指令的 html 代码:
<div class="component">
<ui-select send-data ng-model="country.selected" theme="select2" ng-disabled="disabled" style="width: 300px;">
<ui-select-match placeholder="Select or search a country in the list...">{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="country in countries | filter: $select.search">
<span ng-bind-html="country.name | html"></span>
<small ng-bind-html="country.code | html"></small>
</ui-select-choices>
</ui-select>
</div>
请注意,该指令正在使用自定义指令send-data
。这是我的指令:
var app = angular.module('app');
app.directive('sendData', [
'$compile', '$timeout', '$http', function ($compile, $timeout, $http) {
return {
require: 'ngModel',
link: function (scope, el, attrs, ctrl) {
el.on('on-select', function () {
console.log("changed");
});
}
};
}
]);
该console.log("changed");
语句未在上述指令中触发。这是为什么呢,我是不是搞错了?
我知道我可以on-select
从控制器绑定到事件。但我想在自定义属性中实现这一点。