jQuery,JSON:Javascript obj/array到JSON,用于jQuery.ajax
这是一个与此类似的问题: 除了我有一个对象,其中有几个数组 对象看起来像(模拟的): {“用户”:[1,2,3,4],“客户”:[5,6,7,8],“完成状态”:“过期”,“日期范围”:“本周”} 并且是这样创建的:jQuery,JSON:Javascript obj/array到JSON,用于jQuery.ajax,jquery,json,Jquery,Json,这是一个与此类似的问题: 除了我有一个对象,其中有几个数组 对象看起来像(模拟的): {“用户”:[1,2,3,4],“客户”:[5,6,7,8],“完成状态”:“过期”,“日期范围”:“本周”} 并且是这样创建的: Filter = new FilterData; Filter.Add(9, "Clients"); Filter.Add(12, "Clients"); Filter.Add(75
Filter = new FilterData;
Filter.Add(9, "Clients");
Filter.Add(12, "Clients");
Filter.Add(75, "Clients");
Filter.Add(9, "Users");
Filter.Add(12, "Users");
Filter.Add(75, "Users");
Filter.SetValue("DateRange", "yesterday");
function FilterData(){
this.Users = [];
this.Clients = [];
this.Options = [];
this.Options.CompletionStatus = [];
this.Options.DateRange = [];
this.Add = function(id, type){
this[type].push(id);
this[type] = this[type].unique();
return;
}
this.Rem = function(id, type){+
this[type].splice( Filter[type].indexOf(id), 1);
this[type] = this[type].unique();
return;
}
this.SetValue = function(key, value){
this.Options[key] = value;
}
}
如果我这样做:
AjaxRequest = $.ajax({
...
data: Filter,
...
});
似乎obj最终会是这样的:…Users=1&Users=2&Users=3&
这导致PHP只能为用户看到一个值,在本例中是最后一个值,即3
其中,我需要PHP正确地查看数组:…Users[]=1&Users[]=2&Users[]=3&
你知道怎么纠正吗
Example:
In firebug, my post looks like this:
Clients 1
Clients 10
CompletionStatus pastdue
DateRange 14
Users 2
Users 3
Users 4
and my response looks like this:
page: <?php print_r($_POST) ?>
Array
(
[Users] => 4
[Clients] => 10
[CompletionStatus] => pastdue
[DateRange] => 14
)
示例:
在firebug中,我的帖子如下所示:
客户1
客户10
完成状态过期
日期范围14
用户2
用户3
用户4
我的回答是这样的:
第页:
排列
(
[用户]=>4
[客户]=>10
[完成状态]=>到期日
[日期范围]=>14
)
在javascript中将用户名更改为Users[]Users[]”是javascript对象的有效属性名:
var o= { 'Users[]': 'hello user' };
alert(o['Users[]']);
在javascript中将用户名更改为Users[]Users[]”是javascript对象的有效属性名:
var o= { 'Users[]': 'hello user' };
alert(o['Users[]']);
您是否可以只使用内置的param方法
这似乎是你想要的。如果您想要最新版本,jQuery 1.4alpha中还添加了一些很酷的功能。是否可以只使用内置的param方法
这似乎是你想要的。如果你想要最前沿的版本,jQuery 1.4alpha中还有一些更酷的添加。你能举个例子说明“obj”实际上是什么样子吗?事实上,更好的问题是,你是如何构建“obj”的?你能举个例子说明“obj”实际上是什么样子吗?事实上,更好的问题是,你是如何建立“obj”的?伟大的人都有相同的想法,但出于某种原因,param()也做同样的事情。只有一个值。现在应该可以使用jQuery>=1.4。“从jQuery1.4开始,$.param()方法递归地序列化深层对象,以适应现代脚本语言和框架,如PHP和RubyonRails。”-是的!它还没有完全推出,但现在1.4.2可能已经不远了——尽管在该版本中param前端没有任何更改。查看jQuery BBQ插件,了解原生param方法附带的“deparam”方法。伟人的想法相似,但出于某种原因,param()也做了同样的事情。只有一个值。现在应该可以使用jQuery>=1.4。“从jQuery1.4开始,$.param()方法递归地序列化深层对象,以适应现代脚本语言和框架,如PHP和RubyonRails。”-是的!它还没有完全推出,但现在1.4.2可能已经不远了——尽管在该版本中param前端没有任何更改。查看jQuery BBQ插件,了解原生param方法附带的“deparam”方法。