2017-06-15 83 views
0

我需要將對象的Javascript數組傳遞給PHP。在互聯網上發現了大約3種解決方案,但他們都沒有爲我工作。該陣列看起來像這樣(在Chrome開發者控制檯):使用AJAX/JSON將對象數組傳遞給PHP

enter image description here

而且我現在的AJAX調用看起來是這樣的:

function consolidate() { 
     var studentsstring = JSON.stringify(students); 
     $.ajax({ 
      type: "POST", 
      url: "writefile.php", 
      dataType: "json", 
      data: {students: students}, 
      success: function(data) { 
        alert(data); 
      } 
     }); 
    } 

而且PHP文件看起來像這樣:

<?php 
print($_POST['students']); 
?> 

目前,當我點擊「合併」按鈕時,沒有任何反應。沒有顯示警報。 Chrome開發者在代碼中報告沒有錯誤。

+0

請顯示按鈕的HTML,它是如何觸發「合併」功能。您是否可以通過在第一行中添加警報來驗證「合併」功能實際上是否被調用?這將有助於縮小問題的範圍。您還可以在瀏覽器中查看網絡選項卡,查看是否發送了ajax請求,以及返回的是什麼(如果有的話)。 – ADyson

+0

嘗試在控制檯中手動運行'鞏固()'。與您的按鈕關聯的點擊事件可能不起作用。 – Capsule

+1

'var studentsstring = JSON.stringify(students);'似乎也是多餘的。 – ADyson

回答

1

哦,我很笨。編碼時間太長。該行應該是:

data: {students: studentsstring}, 

現在它工作。謝謝大家。