精华内容
下载资源
问答
  • react获取URL中参数

    万次阅读 2017-12-12 21:26:42
    这个问题想必很多人都会遇到过,这里我说一下怎么获取URL中参数。 如图获取purchaseOrderNo的值。 这个时候我们需要使用一个东西: `queryString.parse(_this.props.location.search)` 通过这句话就可以...

    这个问题想必很多人都会遇到过,这里我说一下怎么获取URL中的参数。

    react 获取URL原理:

    在 react 组件的 componentDidMount 方法中打印一下 this.props,在浏览器控制台中查看输出如下:
    在这里插入图片描述

    其中页面的 url 信息全都包含在 match 字段中,

    以地址  localhost:3000/app/knowledgeManagement/modify/STY20171011124209535/3/1507701970070/0/?s=1&f=7  为例
    
    其中各个参数定义对应如下:
    
    localhost:3000/app/knowledgeManagement/modify/:studyNo/:stepId/:randomNum/:isDefault/?s=&f=
    

    首先打印 this.props.match

    在这里插入图片描述

    可以看到 this.props.match 中包含的 url 信息还是非常丰富的,其中

    history: 包含了组件可以使用的各种路由系统的方法,常用的有 push 和 replace,两者都是跳转页面,但是 replace 不会引起页面的刷新,仅仅是改变 url。

    location: 相当于URL 的对象形式表示,通过 search 字段可以获取到 url 中的 query 信息。(这里 state 的含义与 HTML5 history.pushState API 中的 state 对象一样。每个 URL 都会对应一个 state 对象,你可以在对象里存储数据,但这个数据却不会出现在 URL 中。实际上,数据被存在了 sessionStorage 中)(参考: 深入理解 react-router 路由系统)

    match: 包含了具体的 url 信息,在 params 字段中可以获取到各个路由参数的值。


    通过以上分析,获取 url 中的指定参数就十分简单了,下面是几个例子:

    // localhost:3000/app/knowledgeManagement/modify/STY20171011124209535/3/1507701970070/0/?s=1&f=7
    // localhost:3000/app/knowledgeManagement/modify/:studyNo/:stepId/:randomNum/:isDefault/?s=1&f=7
    
    // 获取 studyNo
    this.props.match.match.params.studyNo // STY20171011124209535
    
    // 获取 stepId
    this.props.match.match.params.stepId // 3
    
    // 获取 success
    const query = this.props.match.location.search // '?s=1&f=7'
    const arr = query.split('&') // ['?s=', 'f=7']
    const successCount = arr[0].substr(3) // '1'
    const failedCount = arr[1].substr(2) // '7'
    

    注意点:

    如果这个值需要在页面中及时获得,这个时候就需要注意了,我们都知道react是有生命周期的,那么什么时候获取URL的值最合适呢?

    • 这个我推荐在componentDidMount 这个生命周期的时候去获取,因为这个时候页面已经挂在好了,完全可以拿到URL上面的值。
    展开全文
  • jquery 获取url 中参数

    千次阅读 2018-10-31 16:43:41
    jquery 获取url 中参数 function getUrlParam(name) { var reg = new RegExp(“(^|&)” + name + “=([^&]*)(&|$)”); //构造一个含有目标参数的正则表达式对象 var r ...

    jquery 获取url 中参数

    function getUrlParam(name) {
    	var reg = new RegExp(“(^|&)” + name + “=([^&]*)(&|$)”); //构造一个含有目标参数的正则表达式对象
    	
    	var r = window.location.search.substr(1).match(reg); //匹配目标参数
    	
    	if (r != null) return unescape(r[2]);
    	return null; //返回参数值
    
    }
    
    展开全文
  • 一、Js获取url中参数的方法: /* 获取请求url参数数组 */ function getUrlVars(){ var vars = [], hash; var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&'); for...

    一、Js获取url中参数的方法:

    /*
    获取请求url参数数组
     */
    function getUrlVars(){
        var vars = [], hash;
        var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
        for(var i = 0; i < hashes.length; i++)
        {
            hash = hashes[i].split('=');
            vars.push(hash[0]);
            vars[hash[0]] = hash[1];
        }
        return vars;
    }
    
    function getUrlVar(name){
        return getUrlVars()[name];
    }

    二、Js的Url中传递中文参数乱码问题

    encodeURI编码,decodeURI解码为例。

    1、传参页面:

    <script type=”text/javascript”>
    function send(){
    var url = "test01.html";
    var userName = $("#userName").html();
    window.open(encodeURI(url + "?userName=" + userName)); 
    }
    </script>

    2、接收参数页面:

    <script>
    var urlinfo = window.location.href;//获取url
    var userName = getUrlVar('userName');//拆分url得到userName參數值
    $(“#userName”).html(decodeURI(userName));
    </script>


    encodeURIComponent编码、decodeURIComponent解码为例

    1、传参页面

    <script type=”text/javascript”>
    function send(){
    var url = "test01.html";
    var userName = $("#userName").html();
    window.open(url + "?userName=" + encodeURIComponent(userName)); 
    }
    </script>
    2接收参数页面:

    <script>
    var urlinfo = window.location.href;//获取url
    var userName = getUrlVar('userName');//拆分url得到userName參數值
    $(“#userName”).html(decodeURIComponent(userName));
    </script>

    三:Js中escape,unescape,encodeURI,encodeURIComponent区别:

    1.传递参数时候使用,encodeURIComponent否则url中很容易被”#”,”?”,”&”等敏感符号隔断。
    2.url跳转时候使用,编码用encodeURI,解码用decodeURI。
    3.escape() 只是为0-255以外 ASCII字符 做转换工作,转换成的 %u**** 这样的码,如果要用更多的字符如 UTF-8字符库 就一定要用 encodeURIComponent() 或 encodeURI() 转换才可以成 %nn%nn 这的码才可以,其它情况下escape,encodeURI,encodeURIComponent编码结果相同,所以为了全球的统一化进程,在用 encodeURIComponent() 或 encodeURI() 代替 escape() 使用吧!








    展开全文
  • 从A页面通过url传参到B页面时,获取URL中参数出现中文乱码问题,解析url参数的正确方法如下,感兴趣的朋友可以参考下 从A页面通过url传参到B页面时,解析url参数可以用下面两种方法: 方法一:正则分析法...

    jquery获取URL中参数解决中文乱码问题的两种方法

    作者: 字体:[增加 减小] 类型:转载 时间:2013-12-18 我要评论

    从A页面通过url传参到B页面时,获取URL中参数出现中文乱码问题,解析url参数的正确方法如下,感兴趣的朋友可以参考下
    从A页面通过url传参到B页面时,解析url参数可以用下面两种方法:
    方法一:正则分析法
    复制代码 代码如下:

    function getQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg);
    if (r != null) return unescape(r[2]); return null;
    }

    这样调用:
    复制代码 代码如下:

    alert(GetQueryString("参数名1"));
    alert(GetQueryString("参数名2"));
    alert(GetQueryString("参数名3"));

    方法二:
    复制代码 代码如下:

    <span style="font-size: 16px;"><Script language="javascript">
    function GetRequest() {
    var url = location.search; //获取url中"?"符后的字串
    var theRequest = new Object();
    if (url.indexOf("?") != -1) {
    var str = url.substr(1);
    strs = str.split("&");
    for(var i = 0; i < strs.length; i ++) {
    theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
    }
    }
    return theRequest;
    }
    </Script></span>

    这样调用:
    复制代码 代码如下:

    <Script language="javascript">
    var Request = new Object();
    Request = GetRequest();
    var 参数1,参数2,参数3,参数N;
    参数1 = Request['参数1'];
    参数2 = Request['参数2'];
    参数3 = Request['参数3'];
    参数N = Request['参数N'];
    </Script>

    如果参数中含有中文字符,注意转编码和解码:
    复制代码 代码如下:

    <span style="font-size:18px;">1.传参页面
    Javascript代码:<script type=”text/javascript”>
    function send(){
    var url = "test01.html";
    var userName = $("#userName").html();
    window.open(encodeURI(url + "?userName=" + userName)); }
    </script>
    2. 接收参数页面:test02.html
    <script>
    var urlinfo = window.location.href;//获取url
    var userName = urlinfo.split(“?”)[1].split(“=”)[1];//拆分url得到”=”后面的参数
    $(“#userName”).html(decodeURI(userName));
    </script></span> 
    展开全文
  • js获取url中参数生成参数对象

    千次阅读 2018-12-21 16:09:47
    //假设url中查询字符串是?q=javascript&amp;num=10 要将?后边的参数按“&amp;”取出来并组合成一个对象 function getQueryStringArgs() { //取得查询字符串并去掉开头的问号 var qs = (location....
  • JS获取URL中参数中文乱码问题

    千次阅读 2019-03-01 13:03:25
    但当参数中有中文的时候, 就会出现乱码的问题。 通过查询资料 原来是浏览器默认使用的是 encodeURI 对汉字进行的编码 所以在解码的时候就需要使用decodeURI 而不是 unescape 上面的代码稍微修改下后 就能解决中文...
  • JS获取URL中参数值(QueryString)的4种方法
  • jQuery 获取url 中参数

    千次阅读 2019-05-07 22:50:55
    var channel=getUrlParam("channel"); function getUrlParam(name) { var reg = new RegExp(“(^|&... //构造一个含有目标参数的正则表达式对象 var r = window.location.search.substr(1).m...
  • C++ 正则获取url中参数

    千次阅读 2016-05-10 17:52:01
    在访问网页过程,为了识别所做操作或者访问对象的编号,大多是用Get方式进行提交网页。所以就有我们经常看到的url,比如...那么在url中参数如何获取呢,在ASP.NET是通过
  • 实际项目,通过Ajax进行异步请求。入参数据因为业务需要来源两个部分,一是URL中参数、二是表单数据... 先定义一个获取URL的js函数: function getUrlParam(name){ //构造一个含有目标参数的正则表达式对象 ...
  • JS URL参数传值,支持中文 开始传参 level tit_h2 function getUrlParam(name){ //正则表达式过滤 var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); //正则...
  • freemarker 页面获取url中参数

    千次阅读 2017-10-26 12:13:59
    在页面 ${a}可以返回123 但是123是string类型的。在和其他变量比较时,注意类型转换,否则会一直报错。 例如:和int类型比较 其中 a??等同于a?exists 判断a是否存在。  a?number 把a转换成数字类型。
  • 获取url中参数的几种方法

    千次阅读 2018-03-30 11:15:22
    useless=219function UrlSearch() { var name,value; var str=location.href; //取得整个地址栏 var num=str.indexOf("?") str=str.substr(num+1); //取得所有参数 stringvar.subst...
  • 使用js获取Url中参数的值

    千次阅读 2019-05-14 14:25:42
    //paraName是url的key function getUrlParam(paraName) { var url = document.location.toString(); var arrObj = url.split("?"); if (arrObj.length > 1) { var arrPara = arrObj[1].split(...
  • html静态页面获取url中参数

    千次阅读 2018-06-01 13:40:37
    function getURLParameter(name) {  return decodeURIComponent((new RegExp('[?|&amp;]' + name + '=' + '([^&amp;;]+?)(&amp;...|$)').exec(location.search)||[,"...])[1].replace(/\+/g, '%20')...
  • 原文出自:... 从A页面通过url传参到B页面时,解析url参数可以用下面两种方法: 方法一:正则分析法   function getQueryString(name) { var reg = new RegExp("(^|&)" + na
  • JS获取URL中参数值的4种方法

    千次阅读 2017-11-23 14:12:21
    通过JS获取url参数,这个经常用到。比如说一个url:http://wwww.jb51.net/?q=js,我们想得到参数q的值,那可以通过以下函数调用即可。 复制代码 代码如下: function GetQueryString(name) {   ...
  • URL传参小用法&获取url中参数

    千次阅读 2016-08-09 11:32:46
    首先列举下获取URL中参数的几种方法 方法一:正则法 这个正则是寻找&+url参数名字=值+&*/ 这里参考网址:***.html?id=1&cid=2 //这里是开始匹配,找到了返回对应url值,没找到返回null function get...
  • 获取url中参数的值

    千次阅读 2017-02-27 17:47:27
    好久没有更新博客了,最近迷上了手账,一个很少女心的东西,总觉得想要学习的东西有很多,一起加油吧~ 今天来总结一下获取url中参数的值,比如 ... * 获取URL查询字符串query中参数的值 * @pa
  • 微信小程序如何获取url中参数

    万次阅读 2019-06-30 18:55:20
    微信小程序如何获取url中参数,通过onLoad的options参数,方法如下: Page({ onLoad:function(options){ console.log(options); } })
  • url添加参数 获取url中参数

    千次阅读 2018-03-06 15:24:00
    //添加参数$(document).on("click",".pinpaifengge .product",function(){ let id = $(this).attr("data-id");//风格id let typeName = $(this).attr("data-name");//风格...
  • ExtJs获取Url中的某个参数,下面例子是获取url中的name属性值 Ext.Object.fromQueryString(window.location.href).name; ExtJs根据id获取元素,给元素设置属性 id: 'student', Ext.getCmp('student').name = '...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 847,254
精华内容 338,901
关键字:

怎么获取url中的参数