在javascript中从搜索框中获取值

在javascript中从搜索框中获取值,javascript,ruby,Javascript,Ruby,如何在javascript中从搜索框中获取值? 我想根据用户在搜索框中选择的内容将其重定向到特定页面。 例如,如果用户选择了纽约,然后单击“是”,他将被重定向到page/about/newyork 这适用于静态页面,但由于某些原因,我无法从搜索框中获取值。 在Ruby中,我将使用params[:query\u name]获得它 我正在使用隐藏值和标记“搜索” var val = getElementsByTagName('search').value; if (r) { location.h

如何在javascript中从搜索框中获取值? 我想根据用户在搜索框中选择的内容将其重定向到特定页面。 例如,如果用户选择了纽约,然后单击“是”,他将被重定向到page/about/newyork

这适用于静态页面,但由于某些原因,我无法从搜索框中获取值。 在Ruby中,我将使用params[:query\u name]获得它

我正在使用隐藏值和标记“搜索”

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

你的意思是因为我认为没有名为搜索的html标记:

所以上面的代码假设元素的id设置为id=search

顺便说一下,要使用getElementsByTagName选择特定元素,还需要指定索引,因为它返回节点列表:

getElementsByTagName('tagName')[indexHERE].value

你的意思是因为我认为没有名为搜索的html标记:

所以上面的代码假设元素的id设置为id=search

顺便说一下,要使用getElementsByTagName选择特定元素,还需要指定索引,因为它返回节点列表:

getElementsByTagName('tagName')[indexHERE].value

getElementsByTagName根据标记名返回多个对象的数组,例如input、div、a等。如果这是搜索栏的外观:

<input id="search" />

getElementsByTagName根据标记名返回多个对象的数组,例如input、div、a等。如果这是搜索栏的外观:

<input id="search" />

您可能还需要指定此==文档,并在“search”是对对象的引用的情况下使用双引号,以确保它被正确插入

 var val = document.getElementById("search").value;
或者使用jQuery:

 var val = $("#search").val();

您可能还需要指定此==文档,并在“search”是对对象的引用的情况下使用双引号,以确保它被正确插入

 var val = document.getElementById("search").value;
或者使用jQuery:

 var val = $("#search").val();