JavaScript中的html更改时选择事件未返回所需值
我一直在互联网上寻找可能的解决办法,但找不到可能的解决办法。我有一个下拉列表JavaScript中的html更改时选择事件未返回所需值,javascript,Javascript,我一直在互联网上寻找可能的解决办法,但找不到可能的解决办法。我有一个下拉列表 <select id="module-box" onchange="myFunction()"> <option value="">Select status</option> <option value="1">Pending</option>
<select id="module-box" onchange="myFunction()">
<option value="">Select status</option>
<option value="1">Pending</option>
<option value="2">Approved</option>
<option value="3">Denied</option>
<option value="4">All</option>
</select>
选择后,它将转到指定的url,但组合框的值将返回值0。您是否有任何想法使组合框的选定值保持不变?谢谢。您可以使用查询字符串中的某些项,在页面加载时,检查该项的值并相应地设置组合框的选定项。请参阅下面的更正代码:
var select_element = document.getElementById('module-box');
select_element.onchange = function(e){
if (!e)
var e = window.event;
var svalue = this.options[this.selectedIndex].value;
if(svalue==1){
window.location = "/pending";
}
else if(svalue==2){
window.location = "/approved";
}
else if(svalue==3){
window.location = "/denied";
}
else if(svalue==4){
window.location = "/list";
}
}
检查此链接的顺便说一句,我对上面所有指定的url都使用相同的html页面。(O.T。)为什么不简单地使用
Pending
?好的,您可以使用regex获取url并在页面加载时相应地设置select值,或者在导航之前将该值保存在cookie中,在页面加载时,获取cookie并设置值“使组合框的选定值保持不变”是什么意思?如果您正在导航到另一个页面,则该值将消失,除非您将其作为参数传递。是的,我刚才一直在这样做,但我担心的是,在执行url时,组合框的值将返回到“选择状态”,但它不起作用。我访问了演示,它没有提醒任何东西。很抱歉,我给你发送了旧链接。正确的链接是,它将转到指定的url,但组合框的值将返回“选择状态”。
var select_element = document.getElementById('module-box');
select_element.onchange = function(e){
if (!e)
var e = window.event;
var svalue = this.options[this.selectedIndex].value;
if(svalue==1){
window.location = "/pending";
}
else if(svalue==2){
window.location = "/approved";
}
else if(svalue==3){
window.location = "/denied";
}
else if(svalue==4){
window.location = "/list";
}
}