zoukankan      html  css  js  c++  java
  • 获取url路径中的参数

    简介

    运用js的时候,我们有时可能会有这样的需求,就是想要获取浏览器地址栏指定的一项参数,形如:https://i.cnblogs.com/EditPosts.aspx?postid=8628413&update=1,

    你想要获取postid的内容8628413,或者update的内容1那么下面就提供解决办法。

    解决办法

    其实解决办法也挺简单,只要通过一个函数就可以处理掉

    //当前url地址栏 file:///C:/Users/admin/Desktop/test.html?id=2
    function GetQueryString(name) {
        var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
        console.log(window.location.search)//?id=2
        var r = window.location.search.substr(1).match(reg);
        if (r != null) return unescape(r[2]);
        return null;
    }
    console.log(GetQueryString('id'))//2

    上面函数的用法很简单,只要把你想要的url参数传进去就可以拿到返回值,注意参数为字符串

    发散思维

    上面的函数是直接解决了获取当前页面url中的参数,有事我们可能不是想要处理url,而是想要获取特定字符串中的参数,形如:postid=8628413&update=1

    然后你想要获取postid的对应的值那么要怎么做呢?

    只需要理解下上面函数的原理就很好改写了

         function GetQueryString(str,name) {
                var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");     
                //str = postid=8628413&update=1                   
                //其实str 就相当于 window.location.search.substr(1)
                var r = str.match(reg);
                if (r != null) return unescape(r[2]);
                return null;
            }
            console.log(GetQueryString('postid=8628413&update=1','postid'))
  • 相关阅读:
    Mac电脑kernel_task占用内存过高
    Mac上的聚焦搜索无法查找到应用
    Mac电脑变卡的原因:
    IE浏览器整页截屏程序
    拓扑排序算法的一个应用
    简单演示mySQL后端数据库关系信息逆向加入到PowerDesigner的物理数据模型和概念数据模型中
    解密存储过程或函数
    C#画图
    .NET设计模式开篇
    非重复随机序列生成算法
  • 原文地址:https://www.cnblogs.com/lst619247/p/8945802.html
Copyright © 2011-2022 走看看