Javascript/jQuery URL查询参数解析
Javascript / jQuery URL Query Params Parse
我有一个URL查询,如下所示:
view-mode=grid&filters%5Bone%5D%3D1%26filters%5Btwo%5D%3D2
最终,我希望能够解析PHP和Java脚本中的参数(使用jQuery)。使用$_GET在PHP中解析没有问题。试图弄清楚如何使用Javascript。Javascript中的最后一个对象应该是这样的:
{
"view-mode" : "grid",
"filters" : {
"one" : "1",
"two" : "2"
}
}
有什么建议吗?我已经在使用URI.js进行一些构建和解析了。
感谢
想好了:
我使用URL.js获取查询参数,使用URI(location.href).query(true)
我得到了一个具有一些属性的对象,包括"view-mode"answers"filters[one]=1&filters[two]=2",其中">filters[one]=1&aamp;filters[22]=2"是一个对象(基于URL.js解析查询的方式)。
然后我遍历该对象并检查该属性是否为对象。如果是,我使用Ben Alman的BBQ jQuery插件来解析属性名称,该名称变为:
filters%5Bone%5D%3D1%26filters%5Btwo%5D%3D2
进入:
{
"filters" : {
"one" : "1",
"two" : "2"
}
}
URI.js解析方法还会导致一些没有值的属性,如"*filters[one]=1&filters[22]=21*"answers"*filters[1]=1&aamp;filters[two]=2[]*."。我忽略了这些
然后,我可以将不是对象的原始属性(如"视图模式=网格")与已解析的对象属性(如:"过滤器%5Bone%5D%3D1%26filters%5Bone%5%D%3D2"
{
"view-mode" : "grid",
"filters" : {
"one" : "1",
"two" : "2"
}
}
最终的结果是Javascript和PHP都可以读取和理解查询参数。
- 从查询字符串参数推断出正确的数据类型
- 如何将参数赋予作为查询参数的参数值给定的函数
- 有没有办法用routerLink/router.navigation附加查询/路由参数
- 如何在mysql查询(NODE.js)中重复使用一个参数
- 具有可选'/'s和查询参数
- 使用useMasterKey参数分析每个服务器查询
- 如果没有Ember中的控制器,我如何更改查询参数
- 如何编码&在不是't是查询参数的一部分
- 防止注射的参数?够了吗?以及应该在每个查询中使用它
- 无法使我的文本参数与我的查询一起工作
- iron路由器将参数添加到字符串中,并添加一个查询
- 如何在JavaScript中传递查询参数和重定向
- React 路由器和任意查询参数:页面在加载时无意中刷新
- 正在使用字段参数查询FB Graph API提要
- 网址或 cookie 中的动态值和参数查询,如何
- 如何使用谷歌浏览器自定义搜索引擎进行多参数查询
- 通过注入器获取url参数查询
- 谷歌自定义搜索引擎多参数查询
- 如何用优先级排序和浅参数查询Firebase数据库
- 通过参数查询Couchbase视图