Javascript AngularJS模型中未激发Escape键
我想在用户按esc键时打开后视图 如下所述: 但是当我按下ESC键时,keydown(或keyup)函数从未调用过Javascript AngularJS模型中未激发Escape键,javascript,angularjs,Javascript,Angularjs,我想在用户按esc键时打开后视图 如下所述: 但是当我按下ESC键时,keydown(或keyup)函数从未调用过 $scope.cancel = function (e) { if (e.keyCode == 27) { $scope.userForm.userName.$rollbackViewValue(); } <input type="text" name="userName" ng-model="name"
$scope.cancel = function (e) {
if (e.keyCode == 27) {
$scope.userForm.userName.$rollbackViewValue();
}
<input type="text" name="userName"
ng-model="name"
ng-model-options="{ updateOn: 'blur' }"
ng-keyup="cancel($event)" />
</form>
$scope.cancel=函数(e){
如果(e.keyCode==27){
$scope.userForm.userName.$rollbackViewValue();
}
完整示例:
我已经测试过了,发现这是我的一个扩展的bug,我用Incognito测试过,没有任何扩展,效果很好
如果其他人有相同的问题,请检查它,不带扩展。您是否使用名称属性为
name=“userForm”
的form
元素包装您的输入?由于angular正在等待模糊事件,因此在您关闭字段时将执行操作,如您提供的示例所示:这告诉Angular,它不应在每次击键后立即更新模型,而应仅在输入触发onBlur事件时更新