如何检测 JSON 对象?



我可以检测到 JSON 对象并根据其对象显示消息吗?

我尝试过这样,但它不起作用:(

$.ajax({
type: "POST",
url: "example.php",
data: form_data,
success: function(data) {
if(data.has("error")){
alert('Invalid data')
} else {
alert('Correct data')  
};
}
});

如果输入的数据错误,数据将在控制台中显示如下内容:

{"对象":"错误","类型":"wrong_number">...

如果此对象包含错误,我想显示错误消息。否则,请继续

请务必在 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')  
};
}
});

一个 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'}

希望这有帮助!

最新更新