1

javascriptの検索ボックスから値を取得するにはどうすればよいですか? ユーザーが検索ボックスで選択した内容に基づいて、ユーザーを特定のページにリダイレクトしたいと考えています。たとえば、ユーザーが「ニューヨーク」を選択して [はい] をクリックすると、ページ /about/New York にリダイレクトされます。

これは静的ページでは機能しますが、何らかの理由で検索ボックスから値を取得できません。Ruby では、params[:query_name] で取得します。

hidden_​​value とタグ「検索」を使用しています

var val = getElementsByTagName('search').value;
if (r) {
  location.href  = "/about/" + val";
}    
4

3 に答える 3

3

「検索」がオブジェクトへの参照である場合は、この == ドキュメントを指定し、二重引用符を使用して、適切に補間されるようにする必要がある場合もあります。

 var val = document.getElementById("search").value;

またはjQueryを使用:

 var val = $("#search").val();
于 2012-06-23T04:48:38.983 に答える
1

ということですか(という名前のhtmlタグがあるとは思わないのでsearch):

var val = getElementById('search').value;
if (r) {
  window.location.href  = "/about/" + val;
}    

したがって、上記のコードは、要素がid次のように設定されていることを前提としていますid="search"


ちなみに、 を使用して特定の要素を選択するには、 Node リストを返すためgetElementsByTagName、指定する必要もあります。index

getElementsByTagName('tagName')[indexHERE].value
于 2012-06-21T23:25:58.907 に答える
1

getElementsByTagName は、タグ名 (input、div、a など) に基づいて多くのオブジェクトの配列を返します。検索バーが次のようになっている場合:

<input id="search" />

次に、次のようにします。

getElementById('search').value;
于 2012-06-21T23:25:59.200 に答える