我使用DB记录管理来构建JQuery / JS / PHP / MysqL应用,并且需要提供可靠的&在AJAX调用上向用户提供完整的反馈,从而修改后端数据库记录. IMHO的问题是$.ajax成功:和错误:函数仅指示AJAX传输层成功,而不指示整个过程.如果数据库修改失败怎么办?如何向用户提供完整的反馈?
我最终以
$.ajax({ url: "/action/delete", data: "rowid="+rowid, complete: function(xmlHttp) { if ( xmlHttp.responseText ) alert('Success - back end returned "success"'); else alert('failure - back end returned NULL') } });
和PHP响应:
$success = deleteRecord( $_GET(rowid) ); if($success) { print 'success'; } else { print NULL; } exit();
这个想法很简单-如果我设法从后端获得正面的反馈,那么整个操作都成功了,如果没有成功-用户不在乎问题出在哪里.
在此先感谢您的宝贵意见.
解决方法:
如果您使用一些json数据而不是仅将一些新的html插入DOM来响应请求,则可以在数据中放置任何类型的错误代码和消息.例如,如果您的答复是…
{
errorstate: 0,
errormsg: "All systems are go",
displaytext: "stuff I want to display when all goes well"
}
您的javascript代码可以检查此数据,并根据需要执行任何操作.它还允许您将更多的错误处理推入服务器脚本中,而这通常可能更简单.
尝试http://docs.jquery.com/Ajax/jQuery.getJSON#urldatacallback
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。