0

我正在尝试jQuery autocomplete使用单个文本字段控制两个搜索。

我可以jQuery autocomplete使用以下代码添加到输入:

    $("search-input").bind("autocompleteselect", jQuery.proxy(function (event, ui) {
      //List element select callback
    }, this)).autocomplete({
        appendTo:"#result-list-1",
        source: function (request, response) {
            $.ajax({
                url://some rest url,
                dataType: "jsonp",          
                data: {
                    featureClass: "P",
                    style: "full",
                    maxRows: 12,
                    name_startsWith: request.term
                },    
                success: function (data) {
                       alert("fb sucess"); 
                    response($.map(data.data, function (item) {
                     //data mapping instructions
                    }));
                },
            });
        }
    }).data("autocomplete")._renderItem = jQuery.proxy(function (ul, item) {
        return $("<li></li>").data("item.autocomplete", item).append("some html to append").appendTo(ul);
    })
}

当我再次尝试将其$("search-input")与自动完成功能的其他参数一起应用时,它可以工作,但会撤消原始功能。

任何人都可以建议一种方法来设置第二个自动完成而不撤消第一个吗?

4

1 回答 1

0
// getter
var oldsource = $( ".selector" ).autocomplete( "option", "source" );

var newsource = [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ]; //A new json object


//Merge it with old source
$.merge(oldsource, newsource);

// setter
$( ".selector" ).autocomplete( "option", "source", oldsource);
于 2013-03-14T06:30:26.607 回答