如何同时从两个url中获取校验值


how to get checked value from two url simultaneousl

我有两个按钮,一个用于组,另一个用于技能。当我点击组按钮时,会显示一个弹出窗口,在弹出窗口中,组显示为带复选框。当我选择组并点击保存按钮时,选中的组将显示在组按钮的上方,弹出窗口将关闭。技能按钮也是如此。

我的问题是,当我选择组时,它会显示在组按钮上,但当我选择技能时,我失去了所选的组。

现在我正在这样做:

 function OnClickButton () {
        var display = "";
        checkboxes = document.getElementsByName("group");
        for( var i=0; i<checkboxes.length; i++){
            if( checkboxes[i].checked ){
                display += " " + checkboxes[i].value;
            }
        }
        window.location.href='job_posting.html?data='+display;
    }
    <button type="button"   onclick="OnClickButton()"  >Save</button> 

这是针对组的

function OnClickButton1 () {
    var display1 = "";
    checkboxes = document.getElementsByName("skill");
    for( var i=0; i<checkboxes.length; i++){
        if( checkboxes[i].checked ){
            display1 += " " + checkboxes[i].value;
        }
    }
    window.location.href='job_posting.html?data='+display1;
}
<button type="button"   onclick="OnClickButton1()"  >Save</button> 

这是为了技能。

我在url中得到了组和技能。不是为了获得网址我尝试这个

function getUrlParameters(parameter, staticURL, decode){
var currLocation = (staticURL.length)? staticURL : window.location.search,
       parArr = currLocation.split("?")[1].split("&"),
       returnBool = true;
   for(var i = 0; i < parArr.length; i++){
        parr = parArr[i].split("=");
        if(parr[0] == parameter){
            return (decode) ? decodeURIComponent(parr[1]) : parr[1];
            returnBool = true;
        }else{
            returnBool = "";            
        }
   }   
   if(!returnBool) return false;  
}

function get_data()
{
var idParameter = getUrlParameters("data","",true);
var idParameter1 = getUrlParameters("data1","",true);
document.getElementById('display').innerHTML=idParameter;
document.getElementById('display1').innerHTML=idParameter1;
} 

在上呼叫

<body onLoad="get_data();">

提前感谢

Victor是对的,这也是我在原始JS中的做法,只有一个区别:

<button type="button" onclick="OnNameSaveClicked()"  >Save</button> 
<button type="button" onclick="OnSkillSaveClicked()"  >Save</button> 

正如你所看到的,它做了同样的事情,所以你可以做:

<button type="button" onclick="handleRedirect()"  >Save</button> 

如果代码行数减少,也会产生同样的效果。

您想要做的事情类似于以下

function handleRedirect() {
    var url = 'job_posting.html?data=';
    var checkboxes = document.getElementsByName('name');
    for(var i = 0; i < checkboxes.length; i++) {
        if(checkboxes[i].checked){
            url += checkboxes[i].value + " ";
        }           
    }
    url += '&data1=';
    checkboxes = document.getElementsByName('skill');
    for(var i = 0; i < checkboxes.length; i++) {
        if(checkboxes[i].checked){
            url += checkboxes[i].value + " ";
        }           
    }
    window.location.href = url;
}

<button type="button" onclick="handleRedirect()"  >Save</button> 
<button type="button" onclick="handleRedirect()"  >Save</button> 

希望这能有所帮助!