如何在查询字符串中将JavaScript数组编码为与PHP兼容的"数组参数"?

tar*_*eld 2 javascript php string http

我有一个jQuery数组,我想在我的PHP脚本的AJAX调用中使用它,任何人都可以帮我这样做吗?

var things = {
  "foo": ["bar", "baz"],
  "bar": 1234
};

var output = "?foo[]=bar&foo[]=baz&bar=1234";
Run Code Online (Sandbox Code Playgroud)

谢谢!!

Ros*_*ane 5

$.param(myobj, true)

从手册:

从jQuery 1.4开始,$ .param()方法递归地序列化深层对象,以适应现代脚本语言和框架,如PHP和Ruby on Rails.您可以通过设置jQuery.ajaxSettings.traditional = true;来全局禁用此功能.

从jQuery 1.8开始,$ .param()方法不再使用jQuery.ajaxSettings.traditional作为其默认设置,默认为false.为了在各版本之间实现最佳兼容性,请使用第二个参数的显式值调用$ .param(),并且不要使用默认值.