0

使用这个自动完成脚本http://www.ajaxdaddy.com/demo-jquery-autocomplete.html 包括:jquery.js 和 jquery.autocomplete.js 要工作自动完成这些 javascript 是必要的

但我还必须使用 jquery-1.9.1.min.js 来进行自动保存和其他功能。

不幸的是,他们之间发生了冲突。自动完成功能不适用于 jquery-1.9.1.min.js(以及 jQuery 1.10.1)。

如果删除 1.9.1.min.js 对其他脚本不起作用。

尝试代替一个$来使用jQueryjQuery.noConflict();低于<script>标签。没有成功。

尝试使用其他自动完成脚本http://jqueryui.com/autocomplete/#remote但响应速度很慢...

在 jquery.js 和 jquery.autocomplete.js 中,大约有 3000 行......似乎不合理地尝试找出问题所在。

如果有人遇到同样的问题,请指教。

这是代码(如果有兴趣)....

 <input type="text" id="partner_name_or_description1" class="row_changed"/>
 <input type="text" id="partner_name_or_description2" class="row_changed"/>
 <input type="text" id="partner_name_or_description3" class="row_changed"/>

jquery-1.9.1.min.js 对于这个 javascript 是必需的

(function ($) {
    jQuery('[id^="partner_name_or_description"]').each(function (index, partner_name_or_description) {
        var partner_name_or_description = partner_name_or_description.id.substring(27);
    });
})(jQuery);

jquery.js 和 jquery.autocomplete.js 对于以下 javascript 是必需的

/**/function findValue(li) {
    /*if( li == null ) return alert("No match!");
    // if coming from an AJAX call, let's use the CityId as the value
    if( !!li.extra ) var sValue = li.extra[0];
    // otherwise, let's just display the value in the text box
    else var sValue = li.selectValue;
    alert("The value you selected was: " + sValue);*/
}

function selectItem(li) {
    findValue(li);
}

function formatItem(row) {
    return row[0] + " (id: " + row[1] + ")";
}

/*function lookupAjax(){
var oSuggest = $("#CityAjax")[0].autocompleter;
oSuggest.findValue();
return false;
}*/

/*function lookupLocal(){
var oSuggest = $("#CityLocal")[0].autocompleter;
oSuggest.findValue();
return false;
}*/


$("#partner_name_or_description1:input, #partner_name_or_description2:input, #partner_name_or_description3:input").autocomplete(
    "__autocomplete_source.php",
    {
        delay: 10,
        minChars: 2,
        matchSubset: 1,
        matchContains: 1,
        cacheLength: 10,
        onItemSelect: selectItem,
        onFindValue: findValue,
        formatItem: formatItem,
        autoFill: true
    }
);
4

0 回答 0