2012-10-14 66 views
0

也許這是有史以來最愚蠢的問題,但不知何故,我無法自己弄清楚這一點。我有一個對象(javascript對象),我想通過jQuery ajax傳遞給我的PHP腳本。當我嘗試傳入對象時會發生錯誤,這可能是因爲對象無法按原樣傳遞,但必須進行序列化。序列化javascript對象

我已經嘗試了幾個東西,如$(ui.item).serialize()ui.item.serialize(),並將其直接傳遞給PHP腳本ui.item。但這不起作用。

這是(子)段代碼。有關如何序列化/傳遞對象ui.item到我的腳本的任何建議?

select: function(event, ui){ 
    $(this).autocomplete('close'); 
    $(this).val(ui.item.value); 
    $.ajax({ 
    url:  ABS_BASE + 'ajax/ajax-search-set-location.php', 
    data:  ui.item, 
    dataType: 'json', 
    type:  'POST', 
    success: function(result){ alert(result); return false; }    
    });  
} 
+0

是ui.item dom元素嗎? – Anoop

回答

5

JSON.stringify()轉換成JSON字符串。在php中使用等效函數進行解碼。

+0

教育晚會(我來自荷蘭)謝謝! +1已接受。 (明天將接受,現在必須離開,我不能接受它。) – Ben

+0

只是一個旁註。 '.stringify()'在IE7中不起作用。但是誰在乎IE7;) – gearsdigital

+0

@gearsdigital你可以包含json.js庫作爲後備。仍然有人使用IE 6圍繞如此糟糕的方式來忽略7 – charlietfl