Angularjs:用户点击回车时的Onchange事件
Posted
技术标签:
【中文标题】Angularjs:用户点击回车时的Onchange事件【英文标题】:Angularjs: Onchange event when the user hits enter 【发布时间】:2014-04-02 09:56:44 【问题描述】:我有一个 html 表格,其中一列是可编辑的
<td ng-model="my.grade">
<div contenteditable>
list.grade
</div>
</td>
我有一个角度函数getInformation
,它会进行一些计算并连接到后端,然后
做桌子。我的目标是,当用户更改上列的值并按回车键时,我想更新表并基本上重新运行函数getInformation
。
我读到我应该ng-model
和ng-change
但我应该如何更新输入时的表值?
【问题讨论】:
【参考方案1】:你可以这样做:
<td ng-model="row.grade"
contenteditable ng-keypress='keyPressed($event)'></td>
所以,ng-model
和 contenteditable
必须在同一个元素上。
此外,如果您在元素上指定ng-model
,则其所有内容将被模型中的值替换。所以它应该是空的。
和
$scope.keyPressed = function (e)
var code = (e.keyCode ? e.keyCode : e.which);
if(code == 13) // 'Enter' keycode
$scope.getInformation(); // your function here or some other code
e.preventDefault();
Plunkr 正在运行: http://plnkr.co/edit/sHHlqF
你为什么使用contenteditable
?也许您可以只使用<input ng-model...>
?
【讨论】:
以上是关于Angularjs:用户点击回车时的Onchange事件的主要内容,如果未能解决你的问题,请参考以下文章
提交时的表单验证 - angularjs 1.5 - 当字段 $pristine 时 $invalid
angularjs之手机输入法回车变搜索,并触发事件,兼容pc回车事件