Sencha touch中的onkeydown

狐狸先生

Javascript具有三个按键事件,分别是按键,按键和按键按下。
由于某些原因,Sencha Touch仅支持它们的键入事件。我想捕获事件(可能是按下按键或按下按键),然后再更改文本字段中的值。捕获keydown事件将使之成为可能,并且它应该要快得多。使用keyup效果会有点慢。

最后,目标是允许用户仅输入数字并自动添加小数点和千位分隔符。目前可以通过keyup事件来实现,但是很慢。作为用户,您可以看到文本在更改,然后又被更改。

我的将keydown事件添加到文本字段的代码:

initialize: function()
{
    this.down('textfield[name=amountTotal]').onkeydown
    = MyApp.app.getController('MyController').handleInput;
}

我检查了执行此代码时是否找到了文本字段,并且控制器功能确实保存了我要执行的正确功能。我还将该功能添加到了我的视图文件中。

但是它不会到达我的handleInput函数。

我知道Sencha不支持其他事件,但是仅使用纯Javascript应该可以实现。

吉尔赫姆·洛普斯

差不多了

initialize: function() {
    var textfield = this.down('textfield[name=amountTotal]');
    textfield.bodyElement.dom.onkeydown = MyApp.app.getController('MyController').handleInput;
}

小提琴:https : //fiddle.sencha.com/#fiddle/caj

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章