我正在使用这个答案中提供的指令,在输入字段中按下回车键时运行一个函数。
我该如何将输入字段
我该如何将输入字段
element.val()
的值传递给指令调用的函数?或者将输入字段element
传递给函数,在检索到值后清除该值。<input type="text" ng-enter="newField()" />
JS
app.directive('ngEnter', function() {
return function(scope, element, attrs) {
element.bind("keydown keypress", function(event) {
if(event.which === 13) {
element.val(); // value of input field
scope.$apply(function(){
scope.$eval(attrs.ngEnter); // passed to this function
});
event.preventDefault();
}
});
};
});
$apply
,因为你正在 Angular 之外触发 Angular 代码(事件块)。$eval
从名称字符串中获取作用域值。 - m59ng
的重要说明。 - m59