這是一個類似的問題,以這樣一種: Convert js Array() to JSon object for use with JQuery .ajaxjQuery的,JSON:使用Javascript OBJ /陣列JSON爲使用jQuery.ajax
除我有在它有幾個陣列的對象。
對象看起來像(模擬的):
{ 「用戶」:[1,2,3,4], 「客戶」:[5,6,7,8], 「CompletionStatus」:「pastdue 」, 「日期範圍」: 「thisweek」}
,並創建像這樣:
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,
...
});
似乎物鏡最終將這樣的:...用戶= 1個&用戶= 2 &用戶= 3 & ....
這是導致PHP只看到一個值對於用戶來說,這將是最後一個,在這種情況下3
其中我所需要的PHP正常看到陣列是:..Users [] = 1個&用戶[] = 2個&用戶[] = 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
)
你能舉一個'obj'的實際樣子嗎? – 2009-12-11 20:48:07
其實,更好的問題是,你如何建立'obj'? – 2009-12-11 20:52:37
@ Darrell Brogdon:編輯。 – Eli 2009-12-11 21:02:08