2

jquery のオートコンプリートを次のように設定しました。

<script>
$(document).ready(function() {
     $( "input#Filter" ).autocomplete({
            source: ["בזן", "גאבה", "אוהד", "יוסי", "שחקן"], 
            minLength: 2,
        });
});
</script>

そしてそれは動作します!

しかし、別のphpファイルからデータを取得する必要があるため、これを使用しました

<script>
$(document).ready(function() {
     $( "input#Filter" ).autocomplete({
            source: "autocomplete.php?file=<?echo $newest?>", 
            minLength: 2,
        });
});
</script>

autocomplete.php は次のように単純であるとしましょう

header("Content-type: application/json; charset=utf-8");
echo json_encode('["אא", "בבבאאא", "גגגאאא"]');
// tried also echo '["אא", "בבבאאא", "גגגאאא"]';

役に立たない。さまざまなフォーラムで多くの解決策を探しました。ジブリッシュとして表示されるか、テキストボックスに何を入力しても、オートコンプリートが配列全体を表示します。

コーディングの問題のように見えます..

私のファイルは両方とも「ANSI AS UTF-8」として保存されています。

ありがとう..

4

3 に答える 3

0

同様の問題があり、なんとか解決できました。詳細については私の質問を参照してください。つまり、ソースを変更します: "autocomplete.php?file ="、ソース: "autocomplete.php?file = encodeURI()"、

于 2012-07-31T09:58:52.200 に答える
0

このautocomplete.phpを試してください:

<html>
    <head>
        <meta charset="utf8">
    </head>
    <body>
        <?php echo json_encode('["אא", "בבבאאא", "גגגאאא"]');?>
    </body>
</html>
于 2012-05-29T12:10:28.440 に答える
0

まず第一に、私はこのオートコンプリートプラグインの経験があまりありません-これらは私の頭から離れたいくつかのアイデアです...

ここでの問題は、PHPファイルがJSONオブジェクトを返していることだと思いますが、実際にはautcompleteプラグインにはJavaScript配列が必要です。プラグインに渡したパラメータのためにこれを想定しsourceています...それは単なる通常の配列です...

あなたが試してみたいと思うかもしれないものはこのようなものです-

header("Content-Type: text/plain; charset=utf-8");
echo '["אא", "בבבאאא", "גגגאאא"]';
exit();

それが問題ではなく、autcompleteプラグインが実際にJSON応答を取得したい場合は、JSONにエンコードする前にデータを通常のPHP配列でラップしてみてください-

header("Content-type: application/json; charset=utf-8");
$names = array(
  'ליאור',
  'עידו',
  'בן'
);
echo json_encode($names);
exit();

exit()JSONデータをエコーアウトした後は、他の出力がJSON形式を台無しにするのを防ぐことを忘れないでください。

于 2012-05-29T12:10:54.473 に答える