1

我正在尝试添加一个与 sencha docs 主页http://docs.sencha.com/ext-js/4-0/完全相同的搜索框

我使用了示例 http://docs.sencha.com/ext-js/4-0/#!/example/form/forum-search.html中的代码 ,一切都按预期工作,除了一件事..

当我从搜索框中的列表中选择一个选项时,组合框值设置为所选值..当我按下箭头按钮时,它会使用修改后的查询执行新搜索..但我只想查看结果以前的搜索 - 正是 sencha 页面上搜索框的行为

任何想法如何实现?

4

2 回答 2

0

在尝试了各种事情之后,下面的代码可以满足我的需要,但也许有更好的方法..

我必须将 triggerAction 设置为“查询”,并且还必须在选择事件处理程序中手动重置组合框的文本

var searchBox = {
      xtype: 'combo',
        store: dataStore,
        displayField: 'title',
        valueField: 'id',
        autoSelect: false,
        typeAhead: false,
        fieldLabel: 'Search for',
        hideTrigger:true,
        anchor: '100%',
        mode:'remote',
        triggerAction: 'query', 
        listeners: {
            'select' : function(combo) {
                var selected = this.value;
                combo.setValue(combo.lastQuery);
                showResult(selected);                   
            }
        },
        listConfig: {
            loadingText: 'Searching ...',
            emptyText: 'No matching posts found.',
            getInnerTpl: function() {
                return '<a class="search-item" href="?term={id}" onclick="return javascript:showResult(\'{id}\')">' +
                    '<h3><span>{title}<br /></span>{id}</h3></a>';
            }
        },
        pageSize: 10
    }
于 2012-12-02T15:38:28.180 回答
0

您需要此页面的第一个样本。首先输入“A” http://docs.sencha.com/ext-js/4-0/#!/example/form/combos.html

于 2012-12-02T14:29:23.897 回答