我正在尝试监听表单字段上的按键事件。为此,我构建了一个带有"keydown“属性的指令,如下所示:
var keydown = function() {
return {
restrict: 'A',
scope: {
keydown: '=keydown'
},
link: function(scope, elem, attr) {
$(elem).keydown(function(evt){
scope.keydown(evt);
});
}
};
};现在我将这段代码添加到我的输入标记中:
<input class="search-input" type="text" ng-model="queryStr" ng-change="redrawUI()" keydown="processSearchBox" >现在我的keydown函数被调用了,它工作得很好…但是,现在我的模型不再绑定到输入表单域...如果我更改模型,表单不会更新
发布于 2013-07-16 09:34:15
问题是您正在创建一个新的“隔离”作用域,该作用域与redrawUI()所在的作用域分离。从父作用域继承并使用scope.$eval处理事件的另一种方法是查看this fiddle。
https://stackoverflow.com/questions/17666093
复制相似问题