以下のようにする必要があります。
まず、PHPエンドポイントに投稿するdata
オブジェクトを作成します。このデータオブジェクトは、フォームのすべての値が入力されるホルダーです。値がフォームからオブジェクトに追加される方法は、フォームをループしてフォームの各値をdata
オブジェクトに追加することです。
var data = {};
$.each($('form').serializeArray(), function(i, field) {
data[field.name] = field.value;
});
次のステップは、データをサーバーに送信しますajax
POST
要求を設定することです。前に定義したdata
オブジェクトが投稿されるのはここです。
$.ajax({
type: "POST",
url: "orderCanceled.php",
data: data,
success: function(response) {
//response will contain the data returned
//from orderCanceled.php
$("body").append(response)
}
})
.done(function() {
alert("success");
})
.fail(function() {
alert("error");
});
成功コールバックでは、orderCanceled.phpからの応答が返されます。このレスポンスを操作して、返されたレスポンスオブジェクトのjavascriptのドット表記を使用して、ページに表示するものを表示することができます。
レスポンスオブジェクトはJSONオブジェクトであり、このように見えたのであれば、たとえば:
{
"username": "garry",
"site": "StackOverflow"
}
その後、response.username
を使用してusername
の値を取得することができます。これは"garry"
を返し、response.site
と同じです。これは"StackOverflow"
を返します。
You should read about accessing object properties on the MDN website。あなたがajaxリクエストを扱っている場合は、サーバーからの応答json
のようなものを処理するためにこれを理解する必要があります。ドット表記法またはかっこ表記を使用できます。両方とも以下に説明されています。あなたが使うものはあなた次第ですが、結果に違いはありません。
上記のJSONオブジェクトが返されたのであれば、バックPOST
要求における上記のセクションに、あなたがこれを行うだろう:あなたはこのようにフォームを送信することができ
success: function(response) {
//data will contain the data returned
//from orderCanceled.php
$("body").append(response.username);
$("body").append(response["site"]);
}
を持っていますあなたはここを見た? http://api.jquery.com/jquery.post/ –
AJAXを試してみてください。 –
@garryは以下のことを意味しますか? –