我遇到了JQuery Mobile(對我而言)和AJAX調用的問題。我使用下面的代碼:
$.ajax({
type: "POST",
url: "http://**correct url**/post/todoitem",
beforeSend: addHeaders,
dataType: "json",
contentType: "application/json",
data: { "todoitem":"test" }, // this is just as a test
success: function(result) {
alert("Success: " + JSON.stringify(result));
},
error: function() {
alert("Error: " + JSON.stringify(arguments));
}
});
在執行此操作,它調用一個PHP腳本,我從的TodoItem需要的數據,所以在這種情況下,字符串「文本」(到底,多變量發送,但現在我只是簡單地使用一個參數)。
我的PHP代碼如下所示(也只是爲了測試目的):
echo json_encode($_POST));
結果是:什麼都沒有,空。 $ _POST似乎是空的。我搜索並嘗試了很多東西,但大多數答案(即使是在這裏的stackoverflow)都是關於表單的,而且人們說我需要序列化表單的內容。但是,我根本沒有使用表格。
我也試過
data: JSON.stringify({ "todoitem" : "test" })
一些建議,但這個也不能工作。 我知道數據被轉移,因爲這個小PHP黑客我試過的:
echo file_get_contents('php://input');
,明確列出了數據:=的TodoItem測試。那麼這一切都出錯了?我正在爲此工作數日!日Thnx提前
你正在測試什麼設備?以及jQuery和jQuery Mobile版本是什麼? –
爲什麼在執行它之前不使用$ .post並調用addHeaders? 我想也許它是在做一個獲取,而不是 – pythonian29033
這不是一個GET,PHP只是不解碼應用程序/ JSON :) –