http://loopj.com/jquery-tokeninput/の jQuery Tokeninput オートコンプリート プラグインを使用しています。
アプリケーションに組み込み、サーバー側スクリプトを使用してすべての結果を取得しています。Tokeninput-Demo の php-script で試してみると、問題なく動作します。しかし、php スクリプトをソースとして使用すると、単語の最初の文字が認識されません。たとえば、「Marc Fisher」を検索して「Marc」と入力しても何も見つかりませんが、「arc」と入力すると機能します。姓についても同様です。
これが私のphpスクリプトです:
$search = $_GET['q'];
$friends = array(
0 => array('name' => 'Marc Fisher', 'id' => '111'),
1 => array('name' => 'Thomas Mann', 'id' => '222'),
2 => array('name' => 'Jon Applebaum', 'id' => '333')
);
$searched_friends = array();
foreach ($friends as $friend) {
$check = strpos($friend['name'], $search);
if ($check !== false) {
array_push($searched_friends, $friend);
}
}
echo(json_encode($searched_friends));
奇妙なことに、GET の URL に直接「Mar」と入力すると、次のように機能して出力されます。
[{"name":"Marc Fisher"}]
私はどこでも検索し、考えられるすべてを試しましたが、役に立ちませんでした。何が悪いかわかりますか?