Javascript 使用enter提交输入更改
我想制作一个项目列表,双击一个项目使其可编辑。当前,在编辑项目时,单击外部(即,Javascript 使用enter提交输入更改,javascript,angularjs,angularjs-ng-repeat,angularjs-ui-utils,Javascript,Angularjs,Angularjs Ng Repeat,Angularjs Ui Utils,我想制作一个项目列表,双击一个项目使其可编辑。当前,在编辑项目时,单击外部(即,blur)提交新值。但是,我还希望在键盘上输入以提交更改 现在,我们是AngularJS的一部分。我正在考虑使用它们。这是我目前的代码。它可以捕获enter事件和我们正在编辑的项,但我不知道如何完成其余的操作 有人能帮忙吗 var-app=angular.module('app',[]); app.controller('Ctrl',['$scope',函数($scope){ $scope.items=[{name
blur
)提交新值。但是,我还希望在键盘上输入以提交更改
现在,我们是AngularJS的一部分。我正在考虑使用它们。这是我目前的代码。它可以捕获enter
事件和我们正在编辑的项
,但我不知道如何完成其余的操作
有人能帮忙吗
var-app=angular.module('app',[]);
app.controller('Ctrl',['$scope',函数($scope){
$scope.items=[{name:“item#1”},{name:“item#2”},{name:“item#3”}];
$scope.eEditable=-1;
$scope.up=函数($event,item){
如果($event.keyCode===13){
console.log(item.name);
//怎么办?
}
}
}])
输入{
字体大小:20px;
边界:无;
背景色:透明;
}
只需将eEditable设置回-1即可
$scope.up = function ($event, item) {
if ($event.keyCode === 13) {
console.log(item.name);
$scope.eEditable = -1;
}
}
只需将eEditable设置回-1
$scope.up = function ($event, item) {
if ($event.keyCode === 13) {
console.log(item.name);
$scope.eEditable = -1;
}
}
为什么不直接调用item.blur()
?@bluehipy,因为item
没有这样的方法<代码>$event.target.blur()
@dfsq确实,$event.target.blur()
可以工作。。。你想发布答案吗?为什么不直接调用item.blur()
?@bluehipy,因为item
没有这样的方法<代码>$event.target.blur()@dfsq确实,$event.target.blur()
可以工作。。。你想发布一个答案吗?只是像模糊一样做它当然不起作用。子作用域阴影:)您可能会弄乱点引用的$parent作用域(不知道如何更好地使用它)。在event.target上触发模糊事件更简单。或者使用controllerAs。我没说你必须触发ng模糊。我的观点是,你只需要像使用ng-blur那样进行复制,就像使用ng-blur一样进行复制,当然它不会工作。子作用域阴影:)您可能会弄乱点引用的$parent作用域(不知道如何更好地使用它)。在event.target上触发模糊事件更简单。或者使用controllerAs。我没说你必须触发ng模糊。我的观点是,你只需要像对待ng blur那样复制。我不知道。。。问@dfsq:-)我不知道。。。询问@dfsq:-)