zoukankan      html  css  js  c++  java
  • js操作url参数

     1 function getQueStr(url, ref) //获取参数值
     2 {
     3     var str = url.substr(url.indexOf('?') + 1);
     4     if (str.indexOf('&') != -1) {
     5         var arr = str.split('&');
     6         for (i in arr) {
     7             if (arr[i].split('=')[0] == ref)
     8                 return arr[i].split('=')[1];
     9         }
    10     }
    11     else {
    12         return url.substr(url.indexOf('=') + 1)
    13     }
    14 }
    15 
    16 function setQueStr(url, ref, value) //设置参数值
    17 {
    18     var str = "";
    19     if (url.indexOf('?') != -1)
    20         str = url.substr(url.indexOf('?') + 1);
    21     else
    22         return url + "?" + ref + "=" + value;
    23     var returnurl = "";
    24     var setparam = "";
    25     var arr;
    26     var modify = "0";
    27 
    28     if (str.indexOf('&') != -1) {
    29         arr = str.split('&');
    30 
    31         for (i in arr) {
    32             if (arr[i].split('=')[0] == ref) {
    33                 setparam = value;
    34                 modify = "1";
    35             }
    36             else {
    37                 setparam = arr[i].split('=')[1];
    38             }
    39             returnurl = returnurl + arr[i].split('=')[0] + "=" + setparam + "&";
    40         }
    41 
    42         returnurl = returnurl.substr(0, returnurl.length - 1);
    43 
    44         if (modify == "0")
    45             if (returnurl == str)
    46                 returnurl = returnurl + "&" + ref + "=" + value;
    47     }
    48     else {
    49         if (str.indexOf('=') != -1) {
    50             arr = str.split('=');
    51 
    52             if (arr[0] == ref) {
    53                 setparam = value;
    54                 modify = "1";
    55             }
    56             else {
    57                 setparam = arr[1];
    58             }
    59             returnurl = arr[0] + "=" + setparam;
    60             if (modify == "0")
    61                 if (returnurl == str)
    62                     returnurl = returnurl + "&" + ref + "=" + value;
    63         }
    64         else
    65             returnurl = ref + "=" + value;
    66     }
    67     return url.substr(0, url.indexOf('?')) + "?" + returnurl;
    68 }
    69 
    70 function delQueStr(url, ref) //删除指定参数值
    71 {
    72     var str = "";
    73 
    74     if (url.indexOf('?') != -1)
    75         str = url.substr(url.indexOf('?') + 1);
    76     else
    77         return url;
    78     var arr = "";
    79     var returnurl = "";
    80     var setparam = "";
    81     if (str.indexOf('&') != -1) {
    82         arr = str.split('&');
    83         for (i in arr) {
    84             if (arr[i].split('=')[0] != ref) {
    85                 returnurl = returnurl + arr[i].split('=')[0] + "=" + arr[i].split('=')[1] + "&";
    86             }
    87         }
    88         return url.substr(0, url.indexOf('?')) + "?" + returnurl.substr(0, returnurl.length - 1);
    89     }
    90     else {
    91         arr = str.split('=');
    92         if (arr[0] == ref)
    93             return url.substr(0, url.indexOf('?'));
    94         else
    95             return url;
    96     }
    97 }
    98 var str = window.location.href.replace(/(?|#)[^"]*/g, '');//删除所有参数值
  • 相关阅读:
    Async方法死锁的问题 Don't Block on Async Code(转)
    微信小程序列表项滑动显示删除按钮
    使用CodeDom动态生成类型
    react native中state和ref的使用
    react native中props的使用
    react native组件的生命周期
    react-native debug js remotely跨域问题
    react native组件的创建
    react native基础与入门
    ionic 开发实例
  • 原文地址:https://www.cnblogs.com/nicoleyani/p/8757884.html
Copyright © 2011-2022 走看看