`

解决Ext中Editor回车提交时触发两次completeEdit()的问题

EXT 
阅读更多

要使Ext.Editor支持回车提交,增加config

completeOnEnter: true

就可以了。

 

但问题来,当回车后,触发一次  this.completeEdit(); 这时我们可以用弹出提示框做一些判断,当弹出提示框时,由于焦点到了提示框上,又触发了Editor的onblur事件,Editor的onblur中又一次调用了 this.completeEdit();。所以导至 this.completeEdit();方法被执行了两次,解决办法:

 

重写Ext.Editor的onSpecialKey方法

 

Ext.override(Ext.Editor,{
    onSpecialKey:function(field,e){
        var key = e.getKey();
        if(this.completeOnEnter && key == e.ENTER){
            this.field.un('blur', this.onBlur, this);    //增加的
            e.stopEvent();
            this.completeEdit();
            this.field.on('blur', this.onBlur, this);   //增加的
        }else if(this.cancelOnEsc && key == e.ESC){
            this.cancelEdit();
        }else{
            this.fireEvent('specialkey', field, e);
        }
    }
});

分享到:
评论

相关推荐

    ext输入框点击回车键直接进入查询

    "ext输入框点击回车键直接进入查询"这一主题涉及到的是EXTJS框架中的一个常见功能,即如何在用户在输入框中按下回车键时触发查询操作。EXTJS是一个强大的JavaScript库,用于构建桌面和移动应用,它提供了丰富的组件...

    解决Ext Grid中文排序问题

    为了解决这个问题,我们可以重写Ext.data.Store的`applySort`函数,以便在进行本地排序时应用中文排序规则。上述代码正是这样一个解决方案。它将原生的`applySort`函数替换为一个新的版本,其中包含了对中文字符串...

    EXT提交服务器的三种方式

    在示例代码中,通过添加`onSubmit: Ext.emptyFn`和自定义的`submit`函数,可以确保表单在提交时不会进行AJAX操作,而是按照常规方式提交。表单的`action`属性会被设置为指定的URL,然后调用`submit()`方法触发提交。...

    Android EditText监听回车键并处理两次回调问题

    // 解决回调两次的问题,只在ACTION_UP时处理回车事件 if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_UP) { Log.e("MainActivity", "onKey: 按下回车键"); // 这里可以添加...

    EXT异步提交FORM表单

    ### EXT异步提交FORM表单知识点详解 #### 一、EXT异步提交FORM表单概述 在现代Web应用开发中,异步提交表单是一种常见的技术手段,它能够提升用户体验,减少页面刷新带来的数据丢失风险,并能有效提高系统的响应...

    Ext的gridpanel控件二次加载问题

    总之,解决Ext的gridpanel控件二次加载时丢失的问题需要对Ext JS的生命周期管理有深入的理解,并结合实际应用场景选择合适的策略。无论是使用全局变量还是优化加载机制,关键在于确保GridPanel实例和数据的正确管理...

    Textbox控件注册回车事件及触发按钮提交事件具体实现

    引子: 在ASP.Net页面中textbox的index为1(或n),其后的提交按钮index为2(n+1),光标在textbox中,回车后... 于是上网查找相关的介绍,最终解决了以下两个问题: (一)、实现在TextBox控件回车事件中 执行JS代码,

    ext 表单提交

    标题中的“ext 表单提交”指的是Ext JS框架中关于表单数据提交的功能。Ext JS是一个流行的JavaScript库,用于构建富客户端Web应用。它提供了一套完整的组件模型,包括各种UI元素,如表格、面板、表单等。在Ext JS中...

    EXT的3中提交方式

    本文详细介绍了EXT框架中三种主要的提交方式:`form`提交、`Ajax`提交以及同步提交。每种方式都有其适用场景和特点,开发者可以根据实际需求选择合适的方法。需要注意的是,在现代Web应用中,由于用户体验的重要性,...

    Ext+JSP实现数据提交

    `Ext`提供了表单组件,可以方便地创建输入框、按钮等元素,并且支持事件监听,如点击提交按钮时触发的事件。 2. **数据序列化**:当用户提交表单时,`Ext`会自动将表单数据序列化为JSON或URL编码格式,准备发送到...

    EXT dojochina ExtAjax表单提交 L9.rar

    "ExtAjax表单提交"是EXTJS中的一个重要功能,用于处理用户在网页上的表单数据,并通过Ajax方式向服务器发送请求,实现异步数据交互。 在EXTJS中,表单(Ext.form.Panel)是数据输入和展示的主要组件。它包含了各种...

    Ext 中文帮助文档

    Ext 是一个广泛使用的JavaScript库,主要用于构建富客户端的Web应用程序。它提供了丰富的用户界面组件和数据绑定机制,使得开发者能够创建功能强大、交互性强的网页应用。本篇将基于"Ext 中文帮助文档"深入探讨Ext的...

    Ext日期时间控件 Spinner控件 Ext代码 Extjs Grid

    在本文中,我们将深入探讨`ExtJS`框架中的两个关键组件——`Ext日期时间控件`和`Spinner控件`,以及它们在`Grid`中的应用。`ExtJS`是一款强大的JavaScript库,专用于构建富客户端应用程序,尤其适用于创建复杂的、...

    Ext3.2中文API

    Ext中文API Ext3.2中文API ExtAPI Ext中文Ext中文API Ext3.2中文API ExtAPI Ext中文Ext中文API Ext3.2中文API ExtAPI Ext中文

    ext控件demo+中文API+ext教程.pdf

    在阅读API时,应重点关注每个控件的配置项,以及常用方法和事件的触发条件,这对于理解和使用EXT控件至关重要。 "ext教程"一般是一系列指导性的教学材料,可能包括文字教程、视频教程或者在线课程。教程通常按照...

    Ext中xtype和vtype.

    在 Ext 中,xtype 和 vtype 是两个非常重要的概念,它们分别用于定义组件的类型和验证规则。 xtype 是 Ext 中的一种组件类型,它定义了组件的行为和外观。Ext 提供了许多内置的 xtype,例如 button、textfield、...

    ext教程、ext核心API 、ext中文教程

    它可以帮助你更好地理解和运用EXT的各类功能,解决在实际开发中遇到的问题。中文教程通常会提供实例代码和详尽的解释,方便初学者边学边实践。 在压缩包中的"EXT教程"文件,可能包含了从入门到进阶的各类教程文章,...

    Ext中的Grid控制纵向滚动条单次滚动量

    在Ext JS这个强大的JavaScript框架中,Grid Panel是用于展示数据的常用组件,它支持大量数据的分页和排序。在处理大数据集时,Grid往往会出现纵向滚动条,以方便用户浏览表格内容。当数据行数非常多时,用户可能希望...

    ext PPT,EXT 教程,EXT 中文帮助手册,EXT 中文手册,ext_教程(入门到精通),Ext技术程序文档大全.

    它能帮助开发者解决在实际项目中遇到的问题。 4. **EXT学习文档**:这份文档可能提供了EXT的进阶学习路径,包括性能优化、无障碍访问性(Accessibility)以及EXT与其他技术(如PHP、Java等后端框架)的集成。 5. *...

    ext中文教程 ext API

    ext中文教程 ext API ext中文教程 ext API

Global site tag (gtag.js) - Google Analytics