在文本框中搜索选项

时间:2012-04-30 16:47:10

标签: extjs4

我正在使用ExtJs4.I在我的网络应用程序中有一个表格,其中有文本框。在文本框中按任意键时,方案是提供类似搜索的AJAX(如Google)。搜索将查看一个Web服务并在drop drown中显示结果(JSON对象)。类似于Google搜索。

有没有任何想法,链接或教程这样做?

由于

4 个答案:

答案 0 :(得分:1)

我希望这对你有所帮助,你可以在extjs4中找到很多例子

http://www.sencha.com/products/extjs/examples/ http://dev.sencha.com/deploy/ext-4.1.0-gpl/examples/#sample-2

答案 1 :(得分:1)

答案 2 :(得分:1)

您可以使用 ComboBox 。使用触发器或没有触发器(看起来像 TextBox )。

Sencha提供了很好的例子:
http://docs.sencha.com/ext-js/4-0/#!/example/form/combos.html
http://docs.sencha.com/ext-js/4-0/#!/example/form/forum-search.html

这是一个简单的例子:

{
        xtype: 'combo',
        id: 'myCombo',
        store: Ext.create('Ext.data.ArrayStore', {
                model: Ext.define('ComboModel', {
                        extend: 'Ext.data.Model',
                        fields: ['id','data1','data2']
                }),
                proxy: {
                        type: 'ajax',
                        url : 'data.json',
                        reader: {
                                type: 'array'
                        }
                }

        }),
        triggerAction: 'query',
        minChars: 2,
        fieldLabel: 'Search',
        displayField: 'data1',
        msgTarget: 'side',
        triggerCls : 'x-form-search-trigger', // Search Icon For Instance
        listConfig: {
                getInnerTpl: function() {
                        return '<div>{data1}</div><div>{data2}</div>';
                }
        }
}

JSON 文件:

[
    ['1','data1-1','data2-1'],
    ['2','data1-2','data2-2'],
    ['3','data1-3','data2-3'],
    ['4','data1-4','data2-4'],
    ['5','data1-5','data2-5']
]

答案 3 :(得分:1)

我认为这个例子http://docs.sencha.com/ext-js/4-1/#!/example/form/forum-search.html会让你感兴趣。该实现使用标准组合框控制。在您的情况下,您需要设置minChars属性= 1,在这种情况下,绑定到Combobox的存储将生成带有过滤器参数的标准READ查询到服务器。你可以在那里生成结果。