修改url中参数值
1.一种方法
function changeUrlArg(url, arg, val){
var pattern = arg+'=([^&]*)';
var replaceText = arg+'='+val;
return url.match(pattern) ? url.replace(eval('/('+ arg+'=)([^&]*)/gi'), replaceText) : (url.match('[\?]') ? url+'&'+replaceText : url+'?'+replaceText);
}
2.麻烦的方法
function replaceUrlParams(myUrl, newParams) {
var _url = $.urlGet(myUrl);
for (var x in newParams) {
var hasInMyUrlParams = false;
for (var y in _url) {
if (x.toLowerCase() == y.toLowerCase()) {
_url[y] = newParams[x];
hasInMyUrlParams = true;
break;
}
}
if (!hasInMyUrlParams) {
_url[x] = newParams[x];
}
}
var _result = "";
for (var p in _url) {
_result += (p + "=" + _url[p] + "&");
}
if (_result.substr(_result.length - 1) == "&") {
_result = _result.substr(0, _result.length - 1);
}
return _result;
}
(function($){
$.extend({
urlGet:function(url)
{
var getUrl = url ? url.split("?") : window.location.href.split("?");
var _exportUrl = [];
if(getUrl.length > 1)
{
var params = getUrl[1].split("&");
for(var i=0, paramsLength = params.length; i<paramsLength; i++)
{
var param = params[i].split("=");
_exportUrl[param[0]] = param[1];
}
}
return _exportUrl;
}
});
})(jQuery);
2种方法 都实现了功能 需求是修改一个值 就跳转 2钟方法 实现效果 不知道怎么样 有机会再测试
修改url中参数值的更多相关文章
- 以NameValueCollection 修改URL中的查询参数
以NameValueCollection 修改URL中的查询参数 本文参考于:http://www.c-sharpcorner.com/Blogs/9421/add-remove-or-modify- ...
- AngularJS如何修改URL中的参数
一. 获取url的相关方法(不修改URL): 1.获取当前完整的url路径 var absurl = $location.absUrl(); //http://172.16.0.88:8100/#/h ...
- 三个获取浏览器URL中参数值的方法
这三个是一般的获取浏览器传的参数值的方法,之前有用unescape()解码的方法,但是遇到汉字会产生乱码,所以用decodeURI(); 方法一: function getQueryString(na ...
- JS获取URL中参数值(QueryString)的4种方法分享<转>
方法一:正则法 复制代码代码如下: function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^ ...
- JS获取URL中参数值(QueryString)的4种方法
方法一:正则法 function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(& ...
- JS获取URL中参数值(QueryString)的4种方法分享
方法一:正则法 function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(& ...
- JS获取URL中参数值的4种方法
方法一:正则法 function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(& ...
- 获取url中参数值
function GetRequest() {var url = window.location.href; //获取url中"?"符后的字串var theRequest = ne ...
- JS获取URL中参数值
一.正则法: function getQueryString(name) { var reg = new RegExp('(^|&)' + name + '=([^&]*)(& ...
随机推荐
- Day7前端学习之路——多栏布局
该文章主要讨论两栏布局和三栏布局,三栏布局包括很著名的圣杯布局和双飞翼布局 一.两栏布局的七种方法(左边固定,右边自适应) 原理: block水平元素宽度能够跟随父容器调节的流动特性,block级别的 ...
- Webpack之魔法注释/* webpackChunkName:"lodash" */的做用
之前在vue的路由配置文件中看到了/* webpackChunkName:"lodash" */这个注释, 在学习了webpack之后了解其做用,作用就是webpack在打包的时候 ...
- 解决打开的小窗口回调参数的问题,layui
问题: 给用户新增优惠券,单个用户,单个优惠券,新增的话,用输入窗点击事件,点击后弹出一个子窗口列表页,选择数据后,点击确定,信息传回父窗口,主要是解决传值的问题. 解决思路: ...
- 代理模式-jdk动态代理
IDB package com.bjpowernode.proxy; /** * 代理类和目标类都必须使用同一个接口. */ public interface IDB { int insert(); ...
- Android布局管理器-使用FrameLayout帧布局管理器显示层叠的正方形以及前景照片
场景 Android布局管理器-使用LinearLayout实现简单的登录窗口布局: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details ...
- Ubuntu系统下使用php7+mysql+apache2搭建自己的博客
很多人都有写博客的习惯,奈何国内的博客网站正在一家家地关闭与重整,部分博客网站也充斥着太多的广告,使用体验非常不好.对于爱写博客的朋友来说,其实还有一个更好的选择,那就是自己搭建一个博客. 搭建一个自 ...
- Git操作:一次性强制push所有分支
现在手上有两个分支,master和rotation,想一次性推送所有分支,可以用--all参数来实现: git push --all origin 如果远程仓库有更改,但你需要直接推送,那就可以使用强 ...
- SpringBoot安全管理--(一)SpringSecurity基本配置
简介: Spring Boot针对Spring Security提供了自动化配置方案,因此可以使Spring Security非常容易地整合进Spring Boot项目中,这也是在Spring Boo ...
- kettle:The tablename is not defined (empty)
报错误The tablename is not defined (empty) 去掉表输出中的"表分区数据"
- 如何获取 iOS APP 的 scheme URL ?
获取IPA文件 拷贝到桌面上 后缀名由 .ipa 改为 .zip 解压之后进入,进入名为Payload的目录 右键点击里面的跟App同名的文件,选择'显示包内容' 用文本编辑器打开当前文件夹下的inf ...