1

リモート ソースにリンクされている jquery オートコンプリート ボックスがあります。何かが選択されたら、そのアイテムの ID を送信したい。

これは私がこれまでに持っているものですが、データを投稿するのはうまくいきません

$( "#artist1" ).autocomplete({
            source: "search.php",
            minLength: 2,
            select: function( event, ui ) {
            var artist1 = ui.item.id;
            var id = $("#id").val();


            $.post('writeToDB.php', { id:id, artist1:artist1});

            }
        });

このコードは他の要素では機能しますが、オートコンプリートに入れると機能しません。どこで間違っている可能性がありますか?

4

2 に答える 2

0

イベントをオーバーライドし、selectそこにロジックを配置する必要があります。詳細については、jQueryUI の autocomplete の公式デモをご覧ください。

コード例

// Supply a callback function to handle the select event as an init option.
$( ".selector" ).autocomplete({
   select: function(event, ui) { ... }
});

// Bind to the select event by type: autocompleteselect.
$( ".selector" ).bind( "autocompleteselect", function(event, ui) {
  ...
});
于 2012-09-21T08:55:28.283 に答える
0

次のようなことができます:-

$( "#artist1" ).autocomplete({

        select: function(event, ui) 
        {
            var artist1 = ui.item.id;
            var id = $("#id").val();
        },

        source: function(request, response) {
        $.ajax({
            url :"search.php" ,
            data : "id="+id+"&artist="+artist1,
            dataType: "json",
            type : "POST",
            success : function(data)
            {
                yourdata
            })

        response(yourdata);
            }
        });
        },
        minLength: 2
        });

これは、これにいくつかの変更を加える必要がある例です。

于 2012-09-21T09:32:40.580 に答える