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";
      }
}