1

我正在使用 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输出的内容:

[“组织#地址”]

它目前工作正常,但是当用户单击建议时,文本框会包含“Organization#Address”。我的问题是,如何修改 texttext,以便当用户单击建议时,它只会将“组织”填充到文本框中,而不是整个 json 建议。

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

谢谢

4

1 回答 1

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。

于 2014-01-01T07:22:11.820 回答