【发布时间】:2013-12-31 05:32:04
【问题描述】:
根据 ajax 返回的内容( 1 或 0 ),我希望是否处理提交操作:
$(document).ready(function(){
$("#submit").submit(function(e){
e.preventDefault();
var username = $("#username").val();
if(username){
$.ajax({
url: 'checkinput.php',
data: {data: JSON.stringify(username)},
type: 'POST',
dataType: "json",
success: function (data) {
if(data.result == 0) {
alertify.log( data.error ); // diplay error
}
if(data.result == 1) {
$("#submit").submit(); // process submit-action => send data to php etc..
}
}
});
} else {
alertify.log( "forgotten something" );
}
});
});
如果 php-script 返回的结果为 0,则显示错误消息并且页面不刷新(GREAT)
如果 Ajax 返回 1,我希望处理提交操作,以便将数据发送到 php。 但是会发生什么:
Ajax 每秒发送 10 个响应(可能是因为我在 if 子句中调用的函数?) 如果返回结果为 1,我希望处理提交操作。 如何解决?
【问题讨论】:
-
您使用了
$("#submit").submit(function(e){...和$("#submit").submit();这会导致无限循环。相反,我会使用表单提交按钮来触发 jQuery 块,然后使用$("#submit").submit();如果返回值为1
标签: javascript jquery ajax return