Javascript 检索JSON数据未按预期工作
下面我在主PHP文件中有一个JSON数组。如您所见,Javascript 检索JSON数据未按预期工作,javascript,php,jquery,json,ajax,Javascript,Php,Jquery,Json,Ajax,下面我在主PHP文件中有一个JSON数组。如您所见,$firstname\u error和$lastname\u error是我打算传递给AJAX的变量,以便将其显示在两个单独的div中。目前什么也没有出现,我不确定为什么。非常感谢您的任何见解 PHP和JSON AJAX .error4和.error5当前不显示任何内容。我相信如果条件不正确,请尝试更改成功功能,如下所示: success: function (data) { if (data.city.trim() != '') {
$firstname\u error
和$lastname\u error
是我打算传递给AJAX的变量,以便将其显示在两个单独的div中。目前什么也没有出现,我不确定为什么。非常感谢您的任何见解
PHP和JSON
AJAX
.error4
和.error5
当前不显示任何内容。我相信如果条件不正确,请尝试更改成功
功能,如下所示:
success: function (data) {
if (data.city.trim() != '') {
$('.error4').html(data.city);
}
if (data.email.trim() != '') {
$('.error5').html(data.email);
}
}
我相信您的如果
条件不正确,请尝试更改您的成功
功能,如下所示:
success: function (data) {
if (data.city.trim() != '') {
$('.error4').html(data.city);
}
if (data.email.trim() != '') {
$('.error5').html(data.email);
}
}
好的,我知道了。使用if(data!==null)
而不是if(data.trim()!='')
好的,我算出来了。使用if(data!==null)
而不是if(data.trim()!='')
因为您有dataType:'json',
传递给success
函数的数据变量将是一个对象,所以您不能使用trim()
要检查响应中是否存在该值,可以在数据上使用:
success: function (data) {
$('.error4').text(data.hasOwnProperty('city') ? data.city : '');
$('.error5').text(data.hasOwnProperty('email') ? data.email : '');
},
希望这有帮助 由于您有数据类型:“json”,
传递给success
函数的数据变量将是一个对象,因此您不能使用trim()
要检查响应中是否存在该值,可以在数据上使用:
success: function (data) {
$('.error4').text(data.hasOwnProperty('city') ? data.city : '');
$('.error5').text(data.hasOwnProperty('email') ? data.email : '');
},
希望这有帮助 如果您向错误处理程序添加一些调试逻辑,您可能会获得一些信息来帮助您找到问题。或者,您可以检查控制台的“网络”选项卡,以了解当前请求的responseText和HTTP状态代码是什么。还要注意,数据
是一个对象。在对象上调用trim()
会给您一个语法错误当它返回时data
中有什么?我没有检查任何错误。我为success添加了一个警报,我确认它正在提交。success函数执行时是否填充了数据
?您使用的是什么版本的jQuery?如果您向错误
处理程序添加一些调试逻辑,您可能会获得一些信息来帮助您找到问题。或者,您可以检查控制台的“网络”选项卡,以了解当前请求的responseText和HTTP状态代码是什么。还要注意,数据
是一个对象。在对象上调用trim()
会给您一个语法错误当它返回时data
中有什么?我没有检查任何错误。我为success添加了一个警报,我确认它正在提交。success函数执行时是否填充了数据
?您使用的是哪个版本的jQuery?感谢您的解释!谢谢你的解释!根据Php&Json
的代码片段,他正在使用$city\u error
或$email\u error
处理空白或错误消息,因此响应将始终具有这些键echo Json\u encode(数组(“city”=>$city\u error,“email”=>$email\u error))代码>依赖值可以为空。您是对的。对不起!没关系@RossWilson,顺便说一句,您的答案更准确,因为您正在检查hasOwnProperty
,这是一种更安全的方法。竖起大拇指!干杯,伙计!:)根据Php&Json
的代码片段,他正在使用$city\u error
或$email\u error
处理空白或错误消息,因此响应将始终具有这些键echo Json\u encode(数组(“city”=>$city\u error,“email”=>$email\u error))代码>依赖值可以为空。您是对的。对不起!没关系@RossWilson,顺便说一句,您的答案更准确,因为您正在检查hasOwnProperty
,这是一种更安全的方法。竖起大拇指!干杯,伙计!:)