【问题标题】:jQuery Autocomplete to jQuery UI Autocomplete migration (jQuery 1.2.x to 2.x)jQuery 自动完成到 jQuery UI 自动完成迁移(jQuery 1.2.x 到 2.x)
【发布时间】:2014-07-18 01:12:41
【问题描述】:

我正在尝试迁移旧脚本以使用最新的 jquery.ui.autocomplete.jsjQuery 2.1.1(加载 jquery-migrate-1.2.1.min.js 会有所帮助,但我不想使用它)。

这是我想要完成的,找到:

$("input").autocomplete(["a", "b", "c"]);

并更改为:

$("input").autocomplete({
  source: ["a", "b", "c"]
});

这是我的三段旧代码:

$("#county").autocomplete(CountyArray, {            
        width: 170,
        matchContains: false,
        selectFirst: false
    }).result(function(event, data, formatted) {
        if($("#county").val()!=''){
            $("#place").val('');
            $("#street").val('');
            $('#islike').val('0');
            LoadPlaceListNew(0);
        }
    });

...

$("#street").autocomplete(siteURL+"auto_street.php?county="+county+"&place="+place,{
        width: 260,
        selectFirst: false      
    }).result(function(event, data, formatted) {        
            $("#street").val(formatted.split(" (")[0]);
            if($("#street").val()!=''){ 
                LoadZipcodesNew(0);
            }           
    });

提前谢谢你!

【问题讨论】:

  • 请创建一个你的旧代码版本的小提琴和另一个你迄今为止尝试过的新版本的小提琴。并请说明您在哪个阶段面临问题
  • 这可能是一个不同的问题,还在看,第一个原因是从 jquery.ui.autocomplete.js 中删除了“unautocomplete”

标签: javascript jquery ajax jquery-ui autocomplete


【解决方案1】:

我们想通了,只需要最新的 jQuery 和 jquery.ui.autocomplete.js(jquery-migrate-1.2.1.min.js 是一种完全不需要的解决方法):

$("#county").autocomplete({
        source: CountyArray,
        /*
        width: 170,
        matchContains: false,
        selectFirst: false
        */
        select: function(event, data) {
            if($("#county").val()!=''){
                $("#place").val('');
                $("#street").val('');
                $('#islike').val('0');
                LoadPlaceListNew(0);
            }
        }
    });

...

$("#street").autocomplete({
    source: siteURL+"auto_street.php?county="+county+"&county="+county,
    /*
    width: 260,
    selectFirst: false
    */
    select: function (event, ui) {
        var strit = ui.item.value;
        strit = strit.split(" (")[0];
        if (ui.item && ui.item.value){
            titleinput = ui.item.value;
            $("#street").val(strit);
            ui.item.value= $.trim(strit);
        } 
        if($("#street").val()!=''){ 
            LoadZipcodesNew(0);
        }
    }   
});

【讨论】:

    猜你喜欢
    • 2016-10-07
    • 1970-01-01
    • 2011-07-23
    • 1970-01-01
    • 2013-05-10
    • 2011-05-31
    相关资源
    最近更新 更多