获取url ?号后面的参数的几种方式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取url ?号后面的参数的几种方式相关的知识,希望对你有一定的参考价值。

参考技术A      search和hash的区别,如果URL中“?”之前有一个“#”比如:“http://localhost:63342/index.html#/version?type=35&id=5”那么使用window.location.search得到的就是空(“”)。因为“?type=35&id=5”串字符是属于“#/version?type=35&id=5”这个串字符的,也就是说查询字符串search只能在取到“?”后面和“#”之前的内容,如果“#”之前没有“?”search取值为空。

所以我做了一个通用的方法

方法 1:

function getQueryString()

    var obg=,a='';

    (a=window.location.search.substr(1))||(a=window.location.hash.split('?')[1])

    a.split(/&/g).forEach(function(item)

        obg[(item=item.split('='))[0]]=item[1];

    )

    return obg



getQueryString();

方法 2:

function getQueryString(e) //要传入key值

    var t = new RegExp("(^|&)" + e + "=([^&]*)(&|$)");

    var a = window.location.href.match(t);

    if (a != null) return a[2];

    return ""

From表单提交数据的几种方式

参考技术A

1,Form表单的常用属性
2,浏览器提交表单时执行步骤
3,提交方法
4,常见的几种提交方式

enctype为 form 表单数据的编码格式,Content-type为Http传输的数据的编码格式。分清两者

1, get: 表单数据会被 encodeURIComponent 后以参数的形式: name1=value1&name2=value2附带在 url? 后面,再发送给服务器,并在 url 中显示出来
2, post: enctype 默认"application/x-www-form-urlencoded"对表单数据进行编码,数据以键值对在http请求体重发送给服务器;如果enctype 属性为"multipart/form-data",则以消息的形式发送给服务器"

在js中定义了其它变量,需要提交的时候携带,这时可以不用表单直接提交(此方法引用了jQuery插件)

以上是关于获取url ?号后面的参数的几种方式的主要内容,如果未能解决你的问题,请参考以下文章

thinkphp中URL传参数的几种方式

php的几种接值方式

From表单提交数据的几种方式

springboot 获取控制器参数的几种方式

springboot获取URL请求参数的几种方法

springboot获取URL请求参数的几种方法