[英]Ajax Call in PHP and jQuery
這是我的functions.php腳本,其中包含以下代碼。 該數組被編碼為JSON。
functions.php
$final['custom']['main'] = queryCustom($conn, $id);
echo json_encode($final);
我的global.js具有以下代碼,可在jQuery中發出AJAX請求:
$.ajax({
type: "POST",
url: "functions.php", // file to reach Ajax call
dataType: "json",
data: {
action: 'custom',
id: id,
},
success:
function(data) {
setCustom(data.custom);
我想知道function(data)
包含的data
是什么? setCustom(data.custom)
,這是什么意思? 有人可以給我一個解釋嗎?
數據包含服務器端json_encode()提供的對象文字。 由於數據類型設置為json,因此已自動進行了解析。
例:
PHP:
$final['custom']['main'] = queryCustom($conn, $id);
echo json_encode($final);
將給出以下json字符串(格式化以更好地理解):
{
"custom": {
"main":[
{
"symbol":"MAP4",
"official_ID":"112315"
}
]
}
}
上面的ajax調用設置為數據類型json。 jQuery知道是否設置了此數據類型,它將自動將字符串解析為對象文字。
Javascript:
$.ajax({
type: "POST",
url: "url.php", // file to reach Ajax call
dataType: "json",
success: function(data) {
var main = data.custom;
console.log(main); // returns the child object with "main"
}
});
data包含初始對象,custom是data的子對象,而main是custom的子對象。
成功:如果請求成功,將調用的函數。 該函數傳遞了三個參數:
在您的PHP代碼中,您已經添加了echo json_encode($final);
如果請求成功完成,將返回該值。 響應將傳遞給您以后可在前端代碼中使用的data
。
您可以在http://api.jquery.com/jQuery.ajax/上了解有關$.ajax()
更多信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.