zoukankan      html  css  js  c++  java
  • js 处理url参数,应用导航分类

    1、先上图

     2、代码

    html

    <li><a href="javascript:void(0);" data-cid = "{$v['id']}" onclick="choiceFn('cid',{$v['id']})">{$v['name']}</a></li>

    <li><a href="javascript:void(0);" data-tid = "{$v['id']}" onclick="choiceFn('tid',{$v['id']})">{$v['name']}</a></li>

    js

    <script>
    function choiceFn(var1, var2){
    var url = window.location.href;
    console.log(url);
    console.log(var1);
    console.log(var2);

    if(var1 == 'cid'){
    if(url.indexOf('cid')==-1){ //等于-1表示这个字符串中没有cid这个字符
    if(url.indexOf('tid')==-1){
    window.location.href = url + '?cid='+var2;
    }else{
    window.location.href = url + '&cid='+var2;
    }
    }else{
    console.log('youyou');
    url = changeURLArg(url,'cid',var2);
    window.location.href = url;

    }
    }

    if(var1 == 'tid'){
    if(url.indexOf('tid')==-1){ //等于-1表示这个字符串中没有cid这个字符
    if(url.indexOf('cid')==-1){
    window.location.href = url + '?tid='+var2;
    }else{
    window.location.href = url + '&tid='+var2;
    }
    }else{
    console.log('youyou');
    url = changeURLArg(url,'tid',var2);
    window.location.href = url;

    }
    }
    }

    /*
    * url 目标url
    * arg 需要替换的参数名称
    * arg_val 替换后的参数的值
    * return url 参数替换后的url
    */
    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;
    }
    }
    return url+' '+arg+' '+arg_val;
    }
    </script>

  • 相关阅读:
    Sqlite框架Delphi10.3(07)
    FastReport 6.8.11在Delphi10.3上的安装
    Delphi 中,InputQuery 函数的妙用
    Javaday25(sax解析xml,json,设计模式)
    并发学习第五篇——volatile关键字
    并发学习第四篇——synchronized关键字
    并发学习第二篇——Thread
    并发学习第一篇——Runnable
    git-仓库迁移并保留commit log
    并发编程理论基础二——画图理解
  • 原文地址:https://www.cnblogs.com/roseY/p/9778049.html
Copyright © 2011-2022 走看看