如何从javascript中的搜索框中获取值? 我想根据用户在搜索框中选择的内容将用户重定向到特定页面。 例如,如果用户选择“纽约”然后单击是,他将被重定向到page / about / New York
这适用于静态页面,但由于某些原因,我无法从搜索框中获取值。 在Ruby中我会用params [:query_name]
来获取它我正在使用hidden_value和标记'search'
var val = getElementsByTagName('search').value;
if (r) {
location.href = "/about/" + val";
}
答案 0 :(得分:3)
你可能还需要指定这个==文档并使用双引号,以防“搜索”是对象的引用,以确保它被正确插值
var val = document.getElementById("search").value;
或使用jQuery:
var val = $("#search").val();
答案 1 :(得分:1)
你的意思是(因为我不认为有一个名为search
的html标签):
var val = getElementById('search').value;
if (r) {
window.location.href = "/about/" + val;
}
因此,上面的代码假设您的元素id
设置为id="search"
顺便说一下,要使用getElementsByTagName
选择特定元素,您还需要指定index
,因为它返回节点列表:
getElementsByTagName('tagName')[indexHERE].value
答案 2 :(得分:1)
getElementsByTagName根据标记名称返回许多对象的数组,例如:输入,div,a等。如果这是您的搜索栏的样子:
<input id="search" />
然后做:
getElementById('search').value;