私はあなたに文字を入力するムービーのオートコンプリートを作成し、ムービーの候補リストを提供します。各ムービーの次に、ムービーがリリースされた日付も追加しました。PHPとJsonを使ってデータをオートコンプリートに取り込む。 jQuery UI 1.8.2以降の問題
は、これは私がPHPでそれを解析する方法である:
$tmdb = new TMDb($api_key);
$json = json_decode($tmdb->searchMovie($_GET['term']));
$response = array();
$i=0;
foreach($json as $movie){
if($i >= 6) break;
$response[$i]['value'] = $movie->name;
$response[$i]['label'] = $movie->name . ' <span class="m_rel">(' . date('Y',strtotime($movie->released)).')</span>';
$i++;
}
echo json_encode($response);
さて、私はjQueryの1.8.2は、すべてが完璧に動作し使用している場合。
私はこの結果を得る:
HTMLはシンプルですが、そのわずか:私はjQueryのUIの新しいバージョンを使用している場合、私はこれを取得
をフォームとオートコンプリートはjQueryのものなので何も気にしません。 UIのバージョンを変更すると、問題が発生します。
誰かがこの問題を解決するにはどうすれば助けてくれますか?私はdraggableとIE(すべてのバージョン)の既知のバグから解決できない他の問題が出ているので、jQuery 1.8.2を使用することはできません。アンドリューのウィテカーの解答後
マイJS:
var movieName = $('#movieName');
movieName.autocomplete({
source: 'movieInfo.php',
select: function (event, ui) {
$(this).val(ui.item.imdbid);
$(".re5").submit()
}
})._renderItem = function(ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a>" + item.label + "<span class='m_rel'>" + item.releasedate + "</span></a>")
.appendTo(ul);
};
'RE5は' 形式のクラスです。このexampleに示すよう
問題はあなたのjs htmlコードにあるはずです。そのコードも追加しないでください。 – mbouzahir