Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript:将第二个下拉选择添加到URL_Javascript_Php - Fatal编程技术网

Javascript:将第二个下拉选择添加到URL

Javascript:将第二个下拉选择添加到URL,javascript,php,Javascript,Php,嗨,我的网页上有两个下拉列表。如何将第二个下拉选择附加到URL而不使用 window.location.href +="&selected2="+value2; 请告诉我必须对函数setsecondparam进行哪些更改,其中value1是第一个下拉列表中的选择 function seturl(sel){ var value = sel.options[sel.selectedIndex].value; window.location.href = "website.p

嗨,我的网页上有两个下拉列表。如何将第二个下拉选择附加到URL而不使用

window.location.href +="&selected2="+value2;
请告诉我必须对函数setsecondparam进行哪些更改,其中value1是第一个下拉列表中的选择

function seturl(sel){        
var value = sel.options[sel.selectedIndex].value;
window.location.href = "website.php?selected1="+value;
}

function setsecondparam(sel,value1) 
{
 var value2 = sel.options[sel.selectedIndex].value;

 window.location.href ="website.php?selected1="+value1+"&selected2="+value2;
}

提前感谢

最好使用一个功能。我差不多是在ES5中写的,如果你使用babel,你可以把它改成ES6

function insertParams (key, value) {
    let search = window.location.search;
    let regex = new RegExp(key+"=[^\&]*");

    search = search.replace(regex, key + '=' + value);
​
    if (!regex.test(search)) {
        search += (search.length > 0 ? '&' : '?') + key + '=' + value;
    }
​
    document.location.search = search;
}

您好,如果我在下拉列表中选择另一个值,这会将该值也附加到URL中,因此对于同一个键,我会有多个值。这就是为什么我不希望它附加到url,而是更改键的值。@RP,现在试试。我添加了regex来检查键是否在那里,我需要它用新的参数值替换以前的参数值。你能建议我怎么做吗?因为现在我不能在第一次更改后更改下拉列表值。我试着用“@RP”替换参数,我编辑了它。它现在应该也能用replace工作了