`
heyugui
  • 浏览: 29745 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

自定义EXTJS查询控件

阅读更多
这是一个查找控件,实例的时候,需要指定一个store就可以,大家可以试下
Ext.app.SearchField = Ext.extend(Ext.form.TwinTriggerField, {
    initComponent : function(){
        Ext.app.SearchField.superclass.initComponent.call(this);
        this.on('specialkey', function(f, e){
            if(e.getKey() == e.ENTER){
                this.onTrigger2Click();
            }
        }, this);
    },

    validationEvent:false,
    validateOnBlur:false,
    trigger1Class:'x-form-clear-trigger',
    trigger2Class:'x-form-search-trigger',
    hideTrigger1:true,
    width:180,
    hasSearch : false,
    paramName : 'query',

    onTrigger1Click : function(){
        if(this.hasSearch){
            this.el.dom.value = '';
            var o = {start: 0};
            this.store.baseParams = this.store.baseParams || {};
            this.store.baseParams[this.paramName] = '';
            this.store.reload({params:o});
            this.triggers[0].hide();
            this.hasSearch = false;
        }
    },

    onTrigger2Click : function(){
        var v = this.getRawValue();
        if(v.length < 1){
            this.onTrigger1Click();
            return;
        }
//        var o = {start: 0};
//        this.store.baseParams = this.store.baseParams || {};
//        this.store.baseParams[this.paramName] = v;
        this.store.reload();
        this.hasSearch = true;
        this.triggers[0].show();
    }
});
Ext.reg('searchfield',Ext.app.SearchField);
这是查找后可清空内容的控件,不需要指定store,适用于需要打开一个窗口选择数据时的应用
Ext.app.clearTriggerField = Ext.extend(Ext.form.TwinTriggerField, {
    initComponent : function(){
        Ext.app.SearchField.superclass.initComponent.call(this);
        this.on('specialkey', function(f, e){
            if(e.getKey() == e.ENTER){
                this.onTrigger2Click();
            }
        }, this);
    },

    validationEvent:false,
    validateOnBlur:false,
    trigger1Class:'x-form-clear-trigger',
    trigger2Class:'x-form-search-trigger',
    hideTrigger1:true,
    width:180,
    hasSearch : false,
    paramName : 'query',

    onTrigger1Click : function(){
        //if(this.hasSearch){
            this.el.dom.value = '';
            this.triggers[0].hide();
            this.hasSearch = false;
        //}
    },

    onTrigger2Click : function(){
        var v = this.getRawValue();
        if(v.length < 1){
            this.onTrigger1Click();
            return;
        }
        this.hasSearch = true;
        this.triggers[0].show();
    }
});
Ext.reg('cleartriggerfield',Ext.app.clearTriggerField);
 

 

分享到:
评论

相关推荐

    extjs时间控件精确秒

    在“EXTJS时间控件精确秒”这个主题中,我们将深入探讨EXTJS如何实现时间控件的秒级精确选择,以及如何自定义和优化这一功能。 EXTJS的时间控件主要通过`Ext.form.field.Time`类来实现。这个类提供了一个标准的时间...

    自定义高级查询Extjs

    在这个场景中,"自定义高级查询Extjs"指的是利用Ext JS框架来构建这样的功能。Ext JS是一个流行的JavaScript库,用于创建富客户端应用程序,特别是与数据展示和操作相关的Web应用。 1. **Ext JS简介** - Ext JS...

    ExtJs6.2中包含文本及时间选择框的自定义查询控件的解决方案

    ### ExtJs 6.2 中包含文本及时间选择框的自定义查询控件解决方案 在ExtJs 6.2框架中实现一个具有文本输入与时间选择功能的自定义查询控件是一个常见但实用的需求。本篇文章将详细介绍如何设计并实现这样一个控件,...

    extjs自定义控件

    在ExtJS中,自定义控件(或组件)是扩展其功能和灵活性的关键。自定义控件允许开发者根据项目需求创建独特的用户界面元素,这些元素可能不包含在ExtJS的默认组件库中。下面将详细介绍ExtJS自定义控件的相关知识点。 ...

    extjs网页控件开发

    在"extjs网页控件开发"中,我们主要关注的是使用ExtJS来创建高效的网页组件,如图表和多级联动下拉列表框。这些控件能够显著提升用户界面的交互性和用户体验。 首先,让我们深入探讨ExtJS中的图表控件。ExtJS提供了...

    EXTJS时间控件年月日时分秒

    在EXTJS中,时间控件是常见的交互元素,允许用户选择特定的时间,包括年、月、日、时、分和秒。这篇文档将深入探讨EXTJS中的时间控件及其使用方法。 首先,EXTJS时间控件的设计理念是为了提供用户友好的时间选择...

    ExtJS时间控件、IP输入控件【控件】

    通过这个压缩包,开发者可以学习如何自定义ExtJS组件来满足特定需求,如创建具有特定行为的时间选择器和IP地址输入框。这不仅涉及ExtJS API的使用,还包括对JavaScript和HTML的理解,以及前端开发的基本原理。对于想...

    extjs 微调控件,时间微调控件,微调,javascript 微调

    在ExtJS中,微调控件(Spinner)是一种用户界面组件,它允许用户通过点击向上或向下的箭头以微小增量增加或减少数值,常见于输入框旁边,提供一种方便的数值调整方式。这个控件在处理精确输入或者范围限制的数值时...

    EXTJS 自定义combo控件

    xtype : 'jxcombo' //配置项 jxValueField:要获取值得字段名称,默认null //公共方法 getJXValue():返回自定义字段的值,如果没有自定义字段,则等价Ext.form.Combo类的getValue()方法

    Extjs6 日期时间控件

    在EXTJS6中,日期时间控件是一种强大的用户界面组件,它将传统的日期选择器与时间选择器结合在一起,提供了一种便捷的方式来输入和编辑日期和时间数据。这个控件在许多应用程序中都非常实用,特别是在那些需要精确...

    extjs 时间控件

    在ExtJS中,时间控件是一种用户界面元素,允许用户选择或输入特定的时间值。它提供了丰富的交互性和自定义选项,使得时间选择过程更加直观和高效。在本篇文章中,我们将深入探讨ExtJS时间控件的使用、功能和配置。 ...

    ExtJs图片按钮控件

    ExtJs图片按钮控件是ExtJs框架中一种增强的按钮组件,它允许开发者在按钮上显示图片,以提供更丰富的用户界面。这个控件通常用于创建具有视觉吸引力的交互式UI元素,比如导航按钮或者操作按钮。下面我们将深入探讨...

    ExtJs搜索控件、插件

    在ExtJS中,搜索控件和插件是提升用户体验、实现高效数据查找的关键元素。本篇将深入探讨这些知识点,以帮助你更好地理解和应用。 首先,我们要了解`SearchField.js`在这个上下文中的作用。通常,这是一个自定义...

    EXTJS 自定义月选择控件

    xtype : 'jxmonthfield' ...select:function(JXMonthField this, Array dates),当选定某些时间值(点击“确定”)时触发,传入参数:this,控件本身,dates,所选中的时间对象数组(不论是否支持多选)

    extjs日期+时间控件

    5. **事件处理**:ExtJS控件通常支持多种事件,如`select`事件(当用户选择一个日期或时间时触发),开发者可以绑定回调函数来响应这些事件,进行进一步的数据处理或验证。 6. **本地化**:对于国际化的应用,日期...

    ExtJs自定义分页控件----PM3PagingToolbar.js

    在 ExtJS3.3基础上开发的. 低一点的版本应该也能用. 没有去测试. 参考: Ext.PagingToolbar.js 因为我开发测试完这个分页工具后, 电脑上显示刚好是15:00, 所以取名: PM3PagingToolbar 如有BUG还请各位提出或留言. ...

    自定义ExtJS控件之下拉树和下拉表格附

    自定义ExtJS控件的基础是阅读和理解官方源码,因为官方示例中的控件都是根据特定需求设计和编写的。通过深入分析官方的代码,我们能够学习到如何按照框架的规则和约定来构建新的控件。 在本例中,主要介绍如何创建...

    extjs 数字控件

    extjs 数字控件 自动补零 控制小数 正负数 自定义错误

    extjs 常用控件的使用 table layout

    在EXTJS中,控件(Components)是构建用户界面的基本单元,它们可以是按钮、表格、表单、面板等。"常用控件的使用"涵盖了EXTJS中的一些核心组件,如: 1. **TextField**:用于输入文本的基本字段,支持多种验证和...

    ExtJs通用筛选查询控件

    在ExtJs中,"通用筛选查询控件"是一个常见且实用的功能,它允许用户在数据网格中进行多维度的筛选和查询,以快速定位到所需的数据。下面我们将详细探讨这个主题。 1. **筛选查询控件的基本概念** 筛选查询控件是...

Global site tag (gtag.js) - Google Analytics