0

私はjQueryオートコンプリートを使用しており、some.phpという名前のphpファイルからデータを取得したいと考えています。

<?php
echo "Hello World";
?>

ここにjavascriptがあります

<script type="text/javascript">
$(function(){
    $("#key").autocomplete({
        source: function(){
            $.ajax({
                type: "POST",
                url: "./some.php",
                data: {key: $("#key").val()},
                success: function(result){
                    // what code is needed here to be placed
                }
            });
        }
    });
});
</script>

ところでhtml =>

<input type="text" name="key" id="key">

スクリプトは正しく書かれていると思います。なぜなら、成功関数 alert(result)を書いているときに「Hello world」が表示されるからですが、ドロップダウンボックスに入れたいのですが、どうすればこの問題を解決できますか、助けてください、ありがとう: )

4

2 に答える 2

2
$("#key").autocomplete({
    source: function(request, response){
        $.ajax({
            type: "POST",
            url: "./some.php",
            data: {key: request.term},
            success: function(result){

                response(result);
            }
        });
    }
});

response(result)オートコンプリート メニューを表示します --result項目の配列にする必要があります (各項目は文字列またはvalueまたはlabelキーを持つオブジェクトです)。

SJ GJ が述べたように、単純に設定できますがsource: "./some.php"、リクエスト パラメータを受け入れて項目の json 配列を返すsome.phpように変更する必要があります。term

于 2012-08-02T20:57:12.677 に答える
1

これを試して:

JS:

<script type="text/javascript">
$(function(){
    $("#key").autocomplete({
        source: "./some.php"
    });
});
</script>

PHP:

$result = array('1' => 'Hello World');

echo json_encode($result);
于 2012-08-02T20:57:03.957 に答える