我有一個jQuery和一個PHP文件。如果在PHP中該過程正確完成,則返回2(由echo json_encode(2))。我在jQuery文件中捕獲它,並在HTM div上顯示一個字符串。我可以做這部分沒有任何問題。從jQuery讀取僅包含對象的JSON數組的值
對我而言,困難的事情是將erorr返回到ajax,當它發生時,顯示在HTML div上。我想返回一個JSON數組{「error」:「xxx」}其中「xxx」是由php生成的錯誤。
所以問題是,我不能得到「錯誤」鍵的價值來顯示它。 我在網站上閱讀了很多類似的主題,但他們都是關於讀取多個對象的值。
jQuery的文件:
$('#log').submit(function(event) {
event.preventDefault();
var stuff = $(this).serializeArray();
stuff.push({name:'tag', value:'login'});
$.ajax({
url: './php/logreg.php', //Como si fuera el action del form
type: 'post', //Por defecto es get
dataType: 'json',
data: stuff,
beforeSend: function(){
$('#span-login-icon').css('display','inline');
}
})
.done(function(data){
if(data == 2){
$('#span-login-resp').html('Correcto');
}
else{
$('#span-login-resp').html(data);
}
});
});
PHP文件:
if($object->queError() === ''){
echo json_encode(2);
}
else{
echo json_encode('{"error"'.':"'.$object->queError().'"'.'}'); //output: {"error":"xxx..."}
}
你有沒有tryied檢查你的JSON數據的關鍵? 'if(data.hasOwnProperty('error')){/ * ... * /} else {/ * ... * /}' –