JS - onkeypress不断追加文本

时间:2016-06-24 11:06:54

标签: javascript angularjs

在我的Angular应用程序中,我有一个带onkeypress的输入字段,如果输入,我用它删除任何逗号:

<input name="option" ng-model="main.optionToAdd" 
   onkeypress="this.value = this.value.replace(/,/g, '')"
</>

然而,我面临的问题是,如果在字段中输入内容后再转到中间(单击或使用箭头键),然后键入它总是附加的内容。

关于如何修复的任何想法?

1 个答案:

答案 0 :(得分:1)

这种情况正在发生,因为您正在更改/重新分配文本框的值,因此光标会结束。 不是重新分配文本框的值,而是尝试使用 onkeydown 事件捕获按下的键,如果是逗号(ASCII代码188),则阻止按键。

<input name="option" onkeydown="return event.which==188?false:true;">