AJAX 数据包含一个或多个单词..?
AJAX data contains one or more words..?
我正在使用 AJAX post 提交表单数据,效果很好。
我不是要显示基于成功或失败的消息..
到目前为止我已经知道了:
alert("Yehh.. Saving Data.");
$.ajax({
url:'go.php?doit=1',
data:$("form").serialize(),
type:'POST' })
.done(function(data) {
console.log(data);
})
提交完成后 data
将不包含任何内容或从更新返回的说明失败原因的文本。
例如,如果没有返回错误,我想显示一个警报。
知道我该怎么做吗?
如果有错误,我想显示不同的警报。
假设您的意思是您的 HTTP 请求正在发送,并且您正在评估故意的 return 值(例如,您正在验证您的表单,并且 return 使用一个空字符串来表示错误),您可以执行以下操作:
JS:
alert("Yehh.. Saving Data.");
$.ajax({
url: 'go.php?doit=1',
data: $("form").serialize(),
type: 'POST'
})
.done(function (data) {
if ( typeof data !== 'string' )
console.log("data is not a string. Consider 'return false' if this is unexpected?")
if ( data.length > 0 )
console.log("There was data returned")
if ( data.length === 0 )
console.log("Empty string returned!")
})
return 带有您要传递的确切数据的 JSON 对象(例如 valid
或 fail
标志,以及一条消息)
在这两种情况下我都会return服务器的响应,只是为了更安全......
但如果你不这样做,它会起作用,除非服务器有问题,没有字符串被 returned 并且你认为你已经成功了!你看到这里的问题了吗?
在服务器上:
成功:
$response = {
'status': 1,
'message': 'Success'
}
错误:
$response = {
'status': 0,
'message': 'Some error'
}
Ajax函数:
$.post( "go.php?doit=1",
{
data : $("form").serialize()
},
function(data) {
if(data.status == 1){
// success! Do something
}
else{
// error! Do something! eg: alert message
alert(data.message)
}
});
我正在使用 AJAX post 提交表单数据,效果很好。
我不是要显示基于成功或失败的消息..
到目前为止我已经知道了:
alert("Yehh.. Saving Data.");
$.ajax({
url:'go.php?doit=1',
data:$("form").serialize(),
type:'POST' })
.done(function(data) {
console.log(data);
})
提交完成后 data
将不包含任何内容或从更新返回的说明失败原因的文本。
例如,如果没有返回错误,我想显示一个警报。
知道我该怎么做吗?
如果有错误,我想显示不同的警报。
假设您的意思是您的 HTTP 请求正在发送,并且您正在评估故意的 return 值(例如,您正在验证您的表单,并且 return 使用一个空字符串来表示错误),您可以执行以下操作:
JS:
alert("Yehh.. Saving Data.");
$.ajax({
url: 'go.php?doit=1',
data: $("form").serialize(),
type: 'POST'
})
.done(function (data) {
if ( typeof data !== 'string' )
console.log("data is not a string. Consider 'return false' if this is unexpected?")
if ( data.length > 0 )
console.log("There was data returned")
if ( data.length === 0 )
console.log("Empty string returned!")
})
return 带有您要传递的确切数据的 JSON 对象(例如 valid
或 fail
标志,以及一条消息)
在这两种情况下我都会return服务器的响应,只是为了更安全...... 但如果你不这样做,它会起作用,除非服务器有问题,没有字符串被 returned 并且你认为你已经成功了!你看到这里的问题了吗?
在服务器上:
成功:
$response = {
'status': 1,
'message': 'Success'
}
错误:
$response = {
'status': 0,
'message': 'Some error'
}
Ajax函数:
$.post( "go.php?doit=1",
{
data : $("form").serialize()
},
function(data) {
if(data.status == 1){
// success! Do something
}
else{
// error! Do something! eg: alert message
alert(data.message)
}
});