CI アプリケーションでページを検索するために jQuery オートコンプリート検索を作成しました。返された JSON データには、ページの「スラッグ」とページの「名前」の 2 つの要素が含まれているため、「名前」を使用してオートコンプリート リストに表示します。誰かが結果を選択するかエンターキーを押すと、スラッグを使用してそのページにリダイレクトされます。
$(function() {
$( "#search" ).autocomplete({
source: "index.php/pages/get_pages",
minLength: 2,
select: function(event, ui) {
$(event.target).val(ui.item.value);
window.location.href = "index.php/pages/" + ui.item.slug;
return false;
}
});
$("#search").keypress(function(e){
if (e.which == 13) {
window.location.href = "index.php/pages/no-results";
return false;
}
});
});
今、誰かがキーワードを入力して結果が見つからなかったときに別のオプションを追加し、Enter キーを押すと、結果のないパラメーターで「ページ」に移動する必要があります。
このコードは、Firefox を除くすべてのブラウザーで正常に機能し、すべての場合で結果のないページに移動します。
結果が見つからず、ユーザーがランダムなページ名を入力してEnterキーを押した場合にのみ、結果のないページに移動する必要があります。