首页 > 编程语言 >JavaScript中获取URL中参数值的方法

JavaScript中获取URL中参数值的方法

时间:2023-10-04 12:32:28浏览次数:42  
标签:URL JavaScript Request url 参数 context var null 参数值

方法一:正则法

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"));

方法二:split拆分法

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;
}
var Request = new Object();
Request = GetRequest();
// var 参数1,参数2,参数3,参数N;
// 参数1 = Request['参数1'];
// 参数2 = Request['参数2'];
// 参数3 = Request['参数3'];
// 参数N = Request['参数N'];

方法三:正则(推荐使用)

通过js获取url参数,这个经常用到。比如说一个url:http://wwww.fly63.com/?q=js,我们想得到参数q的值,那可以通过以下函数调用即可。

function GetQueryString(name) {
    var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
    var r = window.location.search.substr(1).match(reg); //获取url中"?"符后的字符串并正则匹配
    var context = "";
    if (r != null)
        context = decodeURIComponent(r[2]);
    reg = null;
    r = null;
    return context == null || context == "" || context == "undefined" ? "" : context;
}

方法四:单个参数的获取方法

function GetRequest() {
   var url = location.search; //获取url中"?"符后的字串
   if (url.indexOf("?") != -1) {    //判断是否有参数
      var str = url.substr(1); //从第一个字符开始 因为第0个是?号 获取所有除问号的所有符串
      strs = str.split("=");   //用等号进行分隔 (因为知道只有一个参数 所以直接用等号进分隔 如果有多个参数 要用&号分隔 再用等号进行分隔)
      alert(strs[1]);          //直接弹出第一个参数 (如果有多个参数 还要进行循环的)
   }
}

标签:URL,JavaScript,Request,url,参数,context,var,null,参数值
From: https://blog.51cto.com/lianghecai/7703010

相关文章

  • URL路径参数转换器
    作用和基本使用作用:用于校验请求的路由参数中的值是否符合符合指定的规则。这个使用方法和django中的路由参数转换器是差不多的。至于为什么用路径参数转换器,原因和django中的一样,虽然你可以在视图函数中校验,但是如果有好几个视图函数都要用到相同的校验规则,此时使用路径参数......
  • 获取url后面的参数
    方式一finalStringqueryString=request.getQueryString();System.out.println(queryString);//解码System.out.println(URLDecoder.decode(queryString,StandardCharsets.UTF_8));测试:pageSize=25&pageNum=1&sort%5B%27id%27%5D=desc&sort%5B%27name%27%5D=......
  • odoo中用javascript调用model中定义好的方法
    odoo中如果前端界面要调用后台model中写好的方法,很简单。使用do_action即可,比如要调用改res.users的默认语言后执行的方法odoo.define('switch_language.SwitchLanguageMenu',function(require){"usestrict";varModel=require('web.Model');varsession......
  • JavaScript(一)
    javascript的组成:ECMAScript和WebAPIs(DOM、BOM) 注释:ctrl+/单行注释shift+alt+a块注释 js的输入输出语法:输出document.weite("hello")//可以带标签,在body内输出alert('alert')//弹窗警告console.log("hello")//控制台输出​输入letname=prompt("你叫:")​//aler()和pro......
  • JavaScript框架:构建交互性、现代化Web应用的利器
    ......
  • javascript: Sorting Algorithms
     //SortingAlgorithmsintJavaScripthttps://www.geeksforgeeks.org/sorting-algorithms//***fileSort.js*1.BubbleSort冒泡排序法*@paramarry*@paramnszie*/functionBubbleSort(arry,nszie){vari,j,temp;varswapped;for(i=0;i......
  • JavaScript高级技巧:深入探索JavaScript语言的高级特性和用法
    当我们谈论JavaScript高级技巧时,以下是一些示例来说明这些概念:闭包(Closures):functionouterFunction(){varouterVariable='Hello';functioninnerFunction(){console.log(outerVariable);}returninnerFunction;}varmyFunction=outerFunction();myFu......
  • 挑战程序设计竞赛 2.1章习题 POJ 3009 Curling 2.0
    https://vjudge.net/problem/POJ-3009在MM-21星球上,今年的奥运会之后,冰壶运动开始流行起来。但规则与我们的有些不同。冰壶比赛是在一块冰板上进行的,冰板上标有方形网眼。他们只使用一块石头。游戏的目的是用最少的步数将石头从起点引向终点。图1显示了游戏棋盘的一个示例......
  • javascript: Bubble Sort
     //SortingAlgorithmsintJavaScript/***fileSort.js*1.BubbleSort冒泡排序法*/functionBubbleSort(arry,nszie){vari,j,temp;varswapped;for(i=0;i<nszie-1;i++){swapped=false;for(j=0;j<n......
  • 无涯教程-JavaScript - WEBSERVICE函数
    描述WEBSERVICE函数从Internet或Intranet上的Web服务返回数据。语法WEBSERVICE(url)争论Argument描述Required/OptionalurlTheURLofthewebservice.RequiredNotes如果参数无法返回数据,则WEBSERVICE返回#VALUE!错误值。如果参数导致一个无效的字符串或包......