2017-05-01 26 views
1

私はのindex.phpでこのコードを持っているjQueryのオートコンプリートJSON同じ結果

$(document).ready(function(){ 
$("#searchInput").autocomplete({ 
source: "getResults.php" 
}); 

getResults.phpは含まれています

<?php 
$result = array(); 
array_push($result, "Apple"); 
array_push($result, "Banana"); 
array_push($result, "Orange"); 
echo json_encode($result); 
?> 

を私が同じになっておくのはなぜ結果?私は同じリスト/結果を得るsearchInput内に入力

が何であれ、

ありがとうございました。

+0

正確に何を達成したいですか? '$ result'はあなたが押している3つの値を常に含んでいます。それらが変わることを期待していますか?たぶんあなたの質問は十分にはっきりしていないでしょう。 –

+0

@TonyM、私は単語 "Ap .."の最初の文字を入力し始めます。この例のpastebin.com/SnyhvpXcとまったく同じように$ resultからAppleを取得するだけです。どのくらいこれはPHPに関連して、それはコンテンツをフィルタするjQuery/Javascriptのものでなければなりません、私はPHPファイルに何かを投稿するつもりはない、私は結果をフィルタリングする必要がありますが、私が入力している通り.. – eawedat

+0

"Ap"と入力しても3つすべてが得られますか?私のローカル環境とまったく同じようにあなたの設定を試してみました。 –

答えて

0

あなたはこのデータだけを持って

「PHPスクリプトに提出されたものは何でも」送信されていないので:

あなたが買ってあげるすべてです
<?php 
$result = array(); 
array_push($result, "Apple"); 
array_push($result, "Banana"); 
array_push($result, "Orange"); 
echo json_encode($result); 
?> 

あなたは$_POSTをチェックして、あなたが提案する自動を表示したいコメントで述べているので、配列

UPDATE

にポストコンテンツをプッシュする必要があり、あなたはこのような何かをする必要があります。

//php file 

if($_POST && isset($_POST['keyword']){ 
    $search = $_POST['keyword']; 
    $array = ['Apple', 'Banana', 'Orange']; 

    foreach($array as $fruit){ 
    if(strpos($search, $fruit) === 0){ 
     echo $fruit; 
    } 
    } 
} 

このphpファイルには、ajax経由でPOSTリクエストとして送信することができます。

+0

ですが、この例ではありません、https://pastebin.com/SnyhvpXc、どうやって違いますか? – eawedat

+0

私はあなたの質問を理解していません。しかし、値は変更されません。あなたのPHPコードに何も送信していないので、何も変わりません。あなたが望むことを助けてくれると教えてくれるかもしれません。 –

+0

PHPに何かを投稿するつもりはありません。単に、私はPHPファイルとは異なる結果を得ようとしています。はい、私はそれらを取得しています。私の質問は、オートコンプリートのjavascript関数が "Already/Loaded"コンテンツをフィルタリングしない理由ですか?あなたがそのスクリプトを実行するとそこに表示されるpastebin.com/SnyhvpXcの変数変数availableTagsは多くの値を持っていますが、特定の値を検索しようとしたときにも機能し、すべての値ではなくその値だけを表示します。 – eawedat

0

私はあなたのJSで不足しているブラケットを参照してください、私はあなたの側で正しく設定することを思っている:

$(document).ready(function(){ 
 
    $("#searchInput").autocomplete({ 
 
    source: "getResults.php" 
 
});

は次のようになります。

$(document).ready(function(){ 
 
    $("#searchInput").autocomplete({ 
 
     source: "getResults.php" 
 
    }); 
 
});

編集:

あなたが別のファイルからデータを取得しているので、あなたはここで指示に従う必要があります。

https://jqueryui.com/autocomplete/#remote

これは、PHPファイルを呼び出すことを説明します。

+0

それは良いチュートリアルだが、私はsearch.phpのソースコードを見つけることができない、 – eawedat

関連する問題