我可以检测到JSON对象并根据其对象显示消息吗?
我尝试过这样,但是它不起作用:(
$.ajax({
type: "POST",
url: "example.php",
data: form_data,
success: function(data) {
if(data.has("error")){
alert('Invalid data')
} else {
alert('Correct data')
};
}
});
如果输入的数据有误, 数据 会在控制台中显示如下内容:
{“对象”:“错误”,“类型”:“错误数字” ...
如果该对象包含错误,我想显示错误消息。否则,继续
答案 0 :(得分:-1)
请确保在ajax请求上将dataType设置为“ json”,以便在将数据传递给成功处理程序之前将其解析为json。
$.ajax({
type: "POST",
url: "example.php",
data: form_data,
dataType: "json",
success: function(data) {
if(data.has("error")){
alert('Invalid data')
} else {
alert('Correct data')
};
}
});
答案 1 :(得分:-2)
一个json对象是Object类型的,因为如果typeof(jsonObj)== Object,您将收到任何东西,您将不知道它是一个json对象还是仅仅是一个对象,但是您可以做什么,请阅读请求中的标头,如果是application / json,则将是json对象。
另一件事是,您可以在json对象中添加一个属性,例如
var obj = {
customProp: 'Whatever property you want',
data: {
childData: childData
}
}
我刚刚正确地理解了你的问题。
请求中包含成功响应和错误响应
成功响应是响应。状态<200 <300(通常为200)
您可以做的是,在服务器上函数的响应中,检测对象,如果对象正确,则发送响应,否则返回错误对象
error = {errorText: 'Your form is not correct'}
希望这会有所帮助!