[英]Undefined parameter when returning data from jQuery.post to PHP
我正在嘗試從數據庫返回數據並在用戶在第一個文本框中輸入ID后填充文本字段。 目前,只要用戶未在ID號中輸入空格,我就可以使用該代碼。 現在,我嘗試允許該用例。 我的PHP代碼返回一個包含三個字段的json編碼數組:first_name,last_name和full_name。
當我使用console.log(data)查看返回的數據時,我收到以下信息:
{"first_name":"Test","last_name":"Test","full_name":"Test Test"}
但是,在我的代碼中,我嘗試在.val()中寫入data.full_name ,但沒有填充任何內容,並且在使用console.log時出現錯誤消息“ undefined”。
這是整個jQuery代碼:
$("#ID").blur(function () {
var params = {};
params.ID = encodeURIComponent($(this).val());
$.post("getter.php", params, function ( data ) {
if (!data) {
$("input[name=username]").val("User Not Found");
} else {
$("input[name=username]").val(data.full_name);
$("input[name=username]").attr("readonly", true);
}
});
});
您能提供的任何幫助將不勝感激。
強制jQuery將返回的數據讀取為json:
$("#ID").blur(function () {
var params = {};
params.ID = encodeURIComponent($(this).val());
$.post("getter.php", params, function ( data ) {
if (!data) {
$("input[name=username]").val("User Not Found");
} else {
$("input[name=username]").val(data.full_name);
$("input[name=username]").attr("readonly", true);
}
}, "json"); // <- json forced
});
然后確保您返回的數據采用正確的json格式(例如php中的json_encode )
使用trim()
刪除空格。
然后,您可以檢查參數值是否為is_numeric()
,如果為false,則設置默認值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.