获取当前页面url参数的三种方法

获取当前页面url参数的三种方法,第1张

知识先填坑:

假设访问路径为:file:///Users/xiao/learn/js_basics/11htmla=100&b=20&c=30;

分别通过正则匹配、拆分字符串成数组、新API URLSearchParams三种方式获取参数方法如下:

思路:

两次用到split方法,第一次将每个参数和值拆分为数组中的一个值;

遍历这个数组,每个参数和值再次分割,分别将参数和值赋值给一个对象的属性和值;

调用方法通过对象的属性,获取改值

一般出现乱码都是在js_面跳转到哪个类 然後得到这个参数的时候中文乱码,\x0d\有一个非常实用的办法,在js你可以这样写:\x0d\var url=;\x0d\url=encodeURI(url); \x0d\url=encodeURI(url); //最重要的部分,两次调用encodeURI ,就是编码两次\x0d\然後在跳转到url所在的类, 获取这个参数的方法如下:\x0d\String name=requestgetParameter("name"); \x0d\name=URLDecoderdecode(name,"utf8"); \x0d\这样就能解决乱码问题了,这种方法还没遇到过不能解决的乱码,

传参(在input输入框中输入内容后点击回车,跳转到搜索内容页)

$('input')focus(function () {

        $(document)keypress(function (e) {

            if (ekeyCode == 13) {

                var the_name = encodeURI($('the_input input')val())

                windowopen("/searchhtmlsearch=" + the_name)

            }

        });

    })

encodeURI() 函数可把字符串作为 URI 进行编码。

接收url上传来的参数,调用getUrlParam()直接填入要获取的参数名

function getUrlParam(name) {

        var reg = new RegExp("(^|&)" + name + "=([^&])(&|$)");

        var url = decodeURI(windowlocationsearch)

        var r = urlsubstr(1)match(reg);

        if (r != null) return unescape(r[2]); return null;

    }

    var name = getUrlParam('search')

注意解码需要连同所有url一起解码

decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。

以上就是关于获取当前页面url参数的三种方法全部的内容,包括:获取当前页面url参数的三种方法、url传参数出现中文乱码,怎么解决、通过url传参遇到参数为中文无法解码问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/10047998.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存