0

以下に示すように、テキストボックスにオートコンプリートを作成しました。

<input type='text' style='width:100px;' id='tags'>

これは、ページの読み込み時にオートコンプリートを読み込む関数です。

window.onload=function Search_Items() {
    var action = "Search";
    $.ajax({
        method:'GET',
        url:'Ajax.php',
        data: {action:action},
        success:function(result) {
            document.getElementById("Search_Result_Div").innerHTML=result;
            var temp=document.getElementById("Search_Result").value;
            availableProducts=temp.split("`");

            $(function() {
                var Product=$( "#tags" ).autocomplete({
                    source: availableProducts,
                    select: function () {Data_Modification($(this).val());}
                });

                Product.autocomplete('option','onclick').call(Product);
            });                 
        }
    });
};

ここでは、関数を呼び出して値を渡しました (値はオートコンプリートで選択されたものです)。しかし、ここでは、選択した値を渡すのではなく、検索のために入力したものを渡します。

私が推測したのは、関数を呼び出してから、選択した値をテキストボックスに入力することです。しかし、テキストボックスに選択した値を入力してから、その関数を呼び出す必要があります。どうすれば解決できますか? 誰かが以前にこの問題を抱えていたらお願いします。助けてください。

4

2 に答える 2

2

これを試して

 $(function() {
    var Product=$( "#tags" ).autocomplete({
        source: availableProducts,
        select: function (event, ui) {Data_Modification(ui.item.value);}
    });
    Product.autocomplete('option','onclick').call(Product);
 });  
于 2013-10-17T06:27:00.450 に答える
0

私は自分で解決策を見つけました。これを書き直しました

select: function () {Data_Modification($(this).val());} 

select: function (event,ui) {Data_Modification(ui.item.value);}

そしてそれはうまくいきます。

于 2013-10-17T06:28:04.633 に答える