首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >根据从下拉菜单中选择的选项创建查询字符串

根据从下拉菜单中选择的选项创建查询字符串
EN

Stack Overflow用户
提问于 2013-02-11 03:44:20
回答 1查看 953关注 0票数 0

我有这个下拉菜单:

代码语言:javascript
运行
复制
<select name="Filter" onchange="applyFilter(this);">
<option name="Item1" id=Item1 value="10.5">Test1</option>
<option name="Item2" id=Item2 value="27">Test2</option>
<option name="Item3" id=Item3 value="31">Test3</option>
</select>

我仍在学习javascript,正在尝试编写一个函数来生成/加载querystring URL,并将所选项目的值作为参数进行传递。下拉菜单中的每个选项都需要有自己的ID。这是我到目前为止的代码:

代码语言:javascript
运行
复制
<script language="javascript1.2" type="text/javascript">
function applyFilter()
{ 
var currentQS = '';
var currentObject;
var currentURL = '' + window.location.href;

currentQS = unescape(window.location.search);
var newQS = '';

currentObject = document.getElementById('Item1');
newQS = $Querystring(newQS).set(currentObject.name,currentObject.value).toString();
newQS = newQS.substring(1,newQS.length);

currentObject = document.getElementById('Item2');
newQS = $Querystring(newQS).set(currentObject.name,currentObject.value).toString();
newQS = newQS.substring(1,newQS.length);

currentObject = document.getElementById('Item3');
newQS = $Querystring(newQS).set(currentObject.name,currentObject.value).toString();
newQS = newQS.substring(1,newQS.length);

var newURL = 'http://' + location.hostname + location.pathname + '?' + newQS;
window.location = newURL;
}
</script>

对此遗嘱的任何帮助我们都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2013-02-11 04:17:24

不确定$Querystring指的是什么,但您应该能够这样做:

代码语言:javascript
运行
复制
document.getElementsByName('Filter')[0].addEventListener('change', function() {
    window.location = 'http://' + location.hostname + location.pathname + '?' + this.name + '=' + this.options[this.selectedIndex].value;
});

但是,选择菜单可能不是您想要做的事情的最佳选择。看看这篇博文:http://uxmovement.com/forms/stop-misusing-select-menus/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14801836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档