重新加载包含其他数据的页面

时间:2014-01-24 17:22:52

标签: javascript

如果我有以下内容: http://www.domain.com/myscript?x1=v1&x2=v2

我想用其他数据{x3:v3,x4:v4}重新加载此页面。没有操纵原始网址的简单方法是什么?

1 个答案:

答案 0 :(得分:0)

使用window.location

重新加载页面
var original_url = window.location;
window.location = original_url + "&x3=data3&x4=data4";

编辑:您可以使用此功能更新网址中的值:

/**
 * http://stackoverflow.com/a/10997390/11236
 */
function updateURLParameter(url, param, paramVal){
    var newAdditionalURL = "";
    var tempArray = url.split("?");
    var baseURL = tempArray[0];
    var additionalURL = tempArray[1];
    var temp = "";
    if (additionalURL) {
        tempArray = additionalURL.split("&");
        for (i=0; i<tempArray.length; i++){
            if(tempArray[i].split('=')[0] != param){
                newAdditionalURL += temp + tempArray[i];
                temp = "&";
            }
        }
    }

    var rows_txt = temp + "" + param + "=" + paramVal;
    return baseURL + "?" + newAdditionalURL + rows_txt;
}

你可以使用它:

var x1 = updateURLParameter(window.location.href, 'x1', 'updatedData1');
var url = updateURLParameter(x1, 'x2', 'updatedData2');

window.location = url;