修改Textext建议

时间:2013-03-28 20:32:03

标签: jquery

我正在使用TextExt:http://textextjs.com/

这是我目前的代码:

$('#company').textext({
    plugins : 'autocomplete filter ajax',

    autocomplete : {
        render : function (suggestion) {
            var organization = suggestion.split('#');

            return '<strong>' + organization[0] + '</strong><br />' + organization[1];
        }                            
    },

    ajax : {
        url : '/organizations.json',
        dataType : 'json',
        cacheResults : true
    }
});

这是json输出的内容:

  
    

[ “组织#地址”]

  

它目前工作正常,但当用户点击建议时,文本框包含“组织#地址”。我的问题是,如何修改textext,这样当用户点击建议时,它只会将“组织”填入文本框,而不是整个json建议。

如果不清楚,我可以进一步解释。

由于

1 个答案:

答案 0 :(得分:0)

不确定你是否还想要一个答案(考虑到九个月前提出的问题),但以下是基于我在类似情况下编写的一些代码的建议:

$('#company').textext({
    plugins : 'autocomplete filter ajax',

    autocomplete : ...as before

    ajax : ... as before

    // new bit
    ext: {
         selectFromDropdown: function() {
             var self = this;
             var suggestion = self.selectedSuggestionElement().data('text-suggestion');
             var organization

             if (suggestion) {
                 organization = suggestion.split('#');

                 self.val( self.itemManager().itemToString(organization[0]));
                 self.core().getFormData();
             }

             self.trigger('hideDropdown');
         }
    }
});

我没有测试过这个特定版本的代码,因此可能需要进行一些调整。

另一种选择可能是编写自己的ItemManager。