0

textBox にオートコンプリートを追加する次のコードがあります。オートコンプリートが表示され、すべてが機能しますが、ユーザーが項目を選択すると、select コールバックが呼び出されませんか? 解決策はありますか?

$(function() {

$("#txtItem").autocomplete({
    minLength: 1,
    source: function (request, response) {
        $.ajax({
            url: "/Correct url here",
            dataType: "json",
            data: {
                term: request.term
            },
            success: function (data) {
                response($.map(data, function (item) {
                    return {
                        label: item.Name,
                        value: item.Name
                    }
                }))
            },
            select: function (event, ui) {
                alert("sdfsdf");
                //$("#txtItemId").val(ui.item.value.ItemId);
            }
        })
    }
})

}
4

2 に答える 2

2

コードを次のように書き換えます。

$(function() {

$("#txtItem").autocomplete({
    minLength: 1,
    source: function (request, response) {
        $.ajax({
            url: "/Correct url here",
            dataType: "json",
            data: {
                term: request.term
            },
            success: function (data) {
                response($.map(data, function (item) {
                    return {
                        label: item.Name,
                        value: item.Name
                    }
                }))
            }            
        })
    },
    select: function (event, ui) {
        alert("sdfsdf");
        //$("#txtItemId").val(ui.item.value.ItemId);
    }
})

}

うまくいったかどうか教えてください

于 2013-03-11T18:12:03.280 に答える
2
$(function() {

$("#txtItem").autocomplete({
minLength: 1,
source: function (request, response) {
    $.ajax({
        url: "/Correct url here",
        dataType: "json",
        data: {
            term: request.term
        },
        success: function (data) {
            response($.map(data, function (item) {
                return {
                    label: item.Name,
                    ItemId: item.ItemId//this is will put item id in memory
                }
            }))
        }            
    })
},//this is after the source property select is an auto complete property many examples screw this up and it is in side the ajax block of code
select: function (event, ui) {
    alert("sdfsdf");
    //$("#txtItemId").val(ui.item.value.ItemId);
  }
  })}

ここに実例がありますhttp://plnkr.co/edit/RbuRDh1xRIwyO1QamvCe?p=preview

于 2015-07-08T17:52:59.393 に答える