私が必要なのは、ユーザーが検索ボックスにクエリを入力するときです。
<form class="navbar-search pull-left">
<input type="text" autocomplete="off" autofocus id="query" class="search-query search_input" placeholder="Type your query...">
</form>
フォームを送信するためのボタンがありません。 ユーザーがEnterキーを押したときにフォームが送信されるようにしたい。 ユーザーがEnterキーを押すと、クエリがURLに表示されます。 送信前のURLと同様
http://example.come/
そして、ユーザーが自分のテキストを入力してEnterキーを押したとき。このようなURLにクエリを表示させたい
http://example.come/#query
全体をリロードすることなく。 これは、JavascriptまたはJqueryを使用するか、もっと簡単なものですか。
編集: これが私が試したものです window.location.hash = get_query;
if (get_query.length != 0) {
$("#query").val(get_query);
$(".search_input").trigger("keyup"); // This is the Event which triggers
}
回答:
回答№1は1Enterキーによる送信をサポートするために非表示のタイプsubmit要素の入力を追加します。
<form id="form1" class="navbar-search pull-left" action="">
<input type="text" autocomplete="off" autofocus id="query" class="search-query search_input" placeholder="Type your query...">
<input type="submit" style="display: none;">
</form>
フォームの送信時に、入力の値でハッシュを変更します。
$("#form1").submit(function() {
window.location.hash = "#" + $("#query").val();
return false;
});
また見てください 私の例 そしてその 関連するjsfiddle.