获取 url 中的参数

题目描述

1. 指定参数名称,返回该参数的值 或者 空字符串

2. 不指定参数名称,返回全部的参数对象 或者 {}

3. 如果存在多个同名参数,则返回数组

输入例子:
getUrlParam(‘http://www.nowcoder.com?key=1&key=2&key=3&test=4#hehe‘, ‘key‘)
输出例子:
[1, 2, 3]
  function getUrlParam(sUrl, sKey) {
        var val =sUrl.split(‘#‘)[0].split(‘?‘)[1];
        if(sKey){//指定参数名称
            var arry= new Array();
            var str = val.split(‘&‘);
            for(var i =0 ;i<str.length;i++){
                var tem = str[i].split(‘=‘);
                if(tem[0]==sKey){
                   arry.push(tem[1]);
                }
            }
            if(arry.length==0){
                //  空字符串
                return "";
            }else if (arry.length==1){
                return arry[0]
            } else {
                //如果存在多个同名参数,则返回数组
                return arry;
            }
        }else {//不指定参数名称,返回全部的参数对象 或者 {}
            if(val == undefined||val == ""){
                return {};
            }else {
                var arrys=new Object();
                var strs = val.split(‘&‘);
                for(var i =0 ;i<strs.length;i++) {
                    var tem = strs[i].split(‘=‘);
                    if (!(tem[0] in arrys)){
                        arrys[tem[0]]=[];
                    }
                    arrys[tem[0]].push(tem[1]);
                }
                return arrys;
            }
        }
    }
				
时间: 2024-10-19 00:18:01

获取 url 中的参数的相关文章

如何获取url中的参数并传递给iframe中的报表

在使用报表软件时,用户系统左边一般有目录树,点击报表节点就会在右侧网页的iframe中显示出报表,同时点击的时候也会传递一些参数给网页,比如时间和用户信息等.如何使网页中的报表能够获取到传递过来的参数呢?以下用报表软件FineReport简单介绍一些. 具体实现过程 将报表生成页面时,给网页添加onload事件,首先获取url中的参数,然后嫁接到iframe的src上,或者通过获得的参数拼接处完整的报表url赋给iframe的src. <html> <head> <title

C#获取URL中的参数

//获取URL中id参数  var ids = YK.Common.Util.WebKit.QueryParamValue("ids", "");         /// <summary>         /// 获取url参数的字符串类型值         /// </summary>         /// <param name="key">参数名</param>         /// &

vue中如何不通过路由直接获取url中的参数

前言:为什么要不通过路由直接获取url中的参数? vue中使用路由的方式设置url参数,但是这种方式必须要在路径中附带参数,而且这个参数是需要在vue的路由中提前设置好的. 相对来说,在某些情况下直接在url后面拼接?mid=100的方式传递参数更灵活,你不需要设置路由,只需要在url后拼接参数即可,但是这种方式就需要通过javascript获取并提取url中的参数,通过传统的方式直接在页面中获取是行不通的了,因为vue中是无法通过location.search()来获取url问号之后的内容的.

js获取url中的参数,并保证获取到的参数不乱码

  //网上比较经典的js获取url中的参数的方法  function getQueryString(name) {      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");      var r = window.location.search.substr(1).match(reg);      if ( r != null ){        

javaScript获取url中的参数

var urlTools = { //获取RUL参数值 getUrlParam: function(name) { /*?videoId=identification */ var params = decodeURI(window.location.search); /* 截取?号后面的部分 index.html?act=doctor,截取后的字符串就是?act=doctor */ var reg = new RegExp("(^|&)"+ name +"=([^&

jQuery 获取url中的参数

//获取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]); retur

全选全不选,返回字符串长度,汉字计数为2,获取url中的参数 ,函数防抖,函数节流

/* 全选/全不选 */ function selectAll(objSelect) { if (objSelect.checked == true) { $("input[name='chkId']").attr("checked", true); $("input[name='chkAll']").attr("checked", true); } else if (objSelect.checked == false) {

js获取URL中的参数

js获取URL中的一些参数的意思 location对象 含有当前URL的信息. 属性 href 整个URL字符串. protocol 含有URL第一部分的字符串,如http: host 包含有URL中主机名:端口号部分的字符串.如//www.cenpok.net/server/ hostname 包含URL中主机名的字符串.如http://www.cenpok.net ; port 包含URL中可能存在的端口号字符串. pathname URL中"/"以后的部分.如~list/inde

记录一次bug解决过程:velocity中获取url中的参数

一.总结 在Webx的Velocity中获取url中参数:$rundata.getRequest().getParameter('userId') 在Webx项目中,防止CSRF攻击(Cross-site request forgery,跨站请求伪造),在form表单提交中要加入$!csrfToken.ajaxUniqueToken 二.Bug描述:Velocity从URL中获取parameter参数 在项目IDCM中,使用webx容器进行项目的开发.前端的模板引擎采用了velocity,在项目

如何获取URL中的参数

获取URL中的某个参数或者所有参数以便我们后续去修改这个地址,在程序中是非常必要的.网上有很多这样的代码片段,为了以后查阅方便,顺便整理思路,下面使用2种方法来获取URL中的某个参数. 方法一 ,split( )分解法.将URL中的字符按照?,&进行一层一层的分解,将分解得到的参数保存在一个数组中,如果其他地方需要某个参数,直接遍历这个数组,得到自己想要的参数. 可以将以上代码定义在一个方法里,这样其他地方直接调用就行. 方法二,正则表达式分解法.将URL用正则表达式进行分解,直接得到想要的参数