Javascript/jQuery URL查询参数解析

Javascript / jQuery URL Query Params Parse

本文关键字:参数 查询 URL jQuery Javascript      更新时间:2024-01-13

我有一个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都可以读取和理解查询参数。