Javascript 覆盖系统事件:文本字段清除

Javascript 覆盖系统事件:文本字段清除,javascript,sencha-touch-2,Javascript,Sencha Touch 2,我的应用程序中有许多文本字段,都有相同的问题: 按下右侧的清除图标后,此文本框的焦点将丢失 工作正常但效率不高,因为这样我就必须对每个文本字段执行此操作: { xtype: 'textfield', label: 'Name', onClearIconTap: function() {

我的应用程序中有许多文本字段,都有相同的问题: 按下右侧的清除图标后,此文本框的焦点将丢失

工作正常但效率不高,因为这样我就必须对每个文本字段执行此操作:

                {
                    xtype: 'textfield',
                    label: 'Name',
                    onClearIconTap: function() {
                                        this.setValue('');
                                        console.log('onClearTap');
                                    }
                }
我遇到过,覆盖了事件,但它不起作用。这将是首选的解决方案:


有任何帮助吗?

以下是如何在Sencha Touch 2的app.js启动功能中覆盖该功能:

Ext.field.Text.override({
        onClearIconTap: function() {
            this.setValue('');
            this.focus();
            console.log('global onClearTap');
        }
    });

更好的解决方案(适用于touch 2.3.0):


true,并可能在映射覆盖中为此创建一个额外的类文件。
Ext.define('MyApp.override.field.Text', {
    override: 'Ext.field.Text',
    // @private
    doClearIconTap: function(me, e) {
        me.setValue(this.originalValue);

        me.focus();

        //sync with the input
        me.getValue();
    }
});