使用js修改url地址引數
該方法可以修改url的引數。
例如將
www.baidu.com
修改為
www.baidu.com?name=123
操作為:
window.location.href = changeURLArg(window.location.href,'name',123)
function changeURLArg(url,arg,arg_val){
var pattern=arg+'=([^&]*)';
var replaceText=arg+'='+arg_val;
if(url.match(pattern)){
var tmp='/('+ arg+'=)([^&]*)/gi';
tmp=url.replace(eval(tmp),replaceText);
return tmp;
}else{
if(url.match('[\?]')){
return url+'&'+replaceText;
}else{
return url+'?'+replaceText;
}
}
}
/**
* 獲取url裡的引數
* @param arg 引數名
* @returns
*/
function getURLString(arg) {
var reg = new RegExp("(^|&)" + arg + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
//呼叫結果如下:
var url = window.location.href;
changeURLArg(url, "id", 99); // http://www.csdn.com/?id=99&ttt=3
changeURLArg(url, "haha", 33); // http://www.csdn.com/?id=99&ttt=3&haha=33
讀取URL
中的引數、修改URL
引數、動態修改URL replaceState
js程式碼
1、讀取URL
中的引數值
/*
*獲取URL引數
*/
function GetQueryString(name)
{
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) {
return unescape(r[2]);
}
return null;
};
呼叫方法:
var nameVal=GetQueryString("URL上的引數名");
舉例:
瀏覽器地址連上的地址為:
http://www.aazj.cn/pc/meeting/card.html?skinColor=30&gid=-1&userId=566&modid=1133&puid=9
那麼
var userIdVal=GetQueryString("userId") //值就等於566
2、修改URL
引數
//替換指定傳入引數的值,paramName為引數,replaceWith為新值
function replaceParamVal(paramName,replaceWith) {
var oUrl = this.location.href.toString();
var re=eval('/('+ paramName+'=)([^&]*)/gi');
var nUrl = oUrl.replace(re,paramName+'='+replaceWith);
this.location = nUrl;
window.location.href=nUrl
}
呼叫舉例
瀏覽器地址連上的地址為:
http://www.aazj.cn/pc/meeting/card.html?skinColor=30&gid=-1&userId=566&modid=1133&puid=9
加入希望修改userId的值為333,那麼
replaceParamVal("userId","333")
URL就會變成
http://www.aazj.cn/pc/meeting/card.html?skinColor=30&gid=-1&userId=333&modid=1133&puid=9
3、動態修改URL
var newUrl="新的Url";
var stateObject = 0;
var title="0"
history.replaceState(stateObject,title,newUrl);
相關文章
- js解析url引數JS
- js獲取url傳遞引數,js獲取url?號後面的引數JS
- js去除url中指定引數JS
- js實現獲取URL引數JS
- js分解RTMP的url地址JS
- js 原生獲取 url地址引數 const query = new URLSearchParams(window.location.search); const added = query.get("added")JS
- python json格式轉url引數&分割, url引數轉json格式PythonJSON
- JS 點選複製當前URL地址JS
- 修改當前路由地址引數重新重新整理頁面路由
- JS實現JSON物件與URL引數的相互轉換JSON物件
- js時間字串格式化以及url引數處理JS字串格式化
- js.函式parseQuery用於解析url查詢引數JS函式
- POST URL 地址資料開啟URL地址
- 使用 jquery.qrcode.js 生成網站地址url二維碼圖片jQueryJS網站
- 動態路由(URL引數)路由
- 由引數URL想到的
- jQuery接收url的引數jQuery
- URL引數獲取/轉碼
- 獲取url上的引數
- 獲取URL地址
- 什麼是請求引數、表單引數、url引數、header引數、Cookie引數?一文講懂HeaderCookie
- http_build_query引數拼接urlHTTPUI
- C#獲取URL引數值C#
- linux修改系統引數Linux
- 使用JMeter從JSON響應的URL引數中提取特定值JMeterJSON
- 使用url引數傳遞SAP Analytics Cloud filter的一個例子CloudFilter
- 在 URL 中使用另一個 url 作為引數時會被`&`截斷的問題
- IP地址 、域名、 URL、 埠
- 線上json轉url引數格式工具JSON
- Go 1.22中路由 URL 路由引數Go路由
- nginx url必須攜帶引數判定Nginx
- C# 解析獲取Url引數值C#
- JavaScript 獲取 url 傳遞引數值JavaScript
- .NET正則替換URL引數值
- React中的url引數——this.props.matchReact
- js獲取頁面地址引數並將其轉化為一個物件JS物件
- Charles 修改請求(Request)引數
- RAC 修改引數DB_FILES