ajax提交表单的一些注意事项:解释为什么return false却依然提交
ajax提交表单的一些注意事项.ajax提交表单是经常用到的.一般ajax提交要求不再跳转,自然而然的用到了return false .但是你知道 return false 无效,有哪些原因吗?
1.js代码有错误,语法错误,逻辑错误,等等. 语法错误相对容易解决,firebug可以看得清楚.逻辑错误就得仔细排查了;
2.跨域. www.xiaojudeng.com 域名下ajax请求 www.baidu.com ,肯定不行的;这在ie下表现为return false失效,依然正常提交;firefox可能正常;因为实际测试中,子域在firefox里正常,ie不正常.
Php代码- 1.$(function(){
- 2.var url = 'http://www.xiaojudeng.com';
- 3.formobj = $('#bookform');
- 4.formobj.submit(function(){
- 5. var title = $('#title').val();
- 6. var username = $('#usernameorder').val();
- 7. var telephone = $('#telephone').val();
- 8. var booktime = $('#booktime').val();
- 9. if(title.length<1) {
- 10. alert('手术项目不能为空');$('#title').focus();
- 11. return false;
- 12. }
- 13. if(username.length<1){
- 14. alert('您的姓名不能为空'); $('#usernameorder').focus();
- 15. return false;
- 16. }
- 17. if( !ismobile(telephone) ){
- 18. alert('您的手机号码不正确'); $('#telephone').focus();
- 19. return false;
- 20. }
- 21. $.post(url,formobj.serialize(),function(data){
- 22. if(data == 0) {
- 23. alert('订单提交成功,客服将及时联系您。');
- 24. $('#title').val('');$('#usernameorder').val('');$('#telephone').val('');$('#booktime').val('');
- 25. return false;
- 26. }
- 27. else{
- 28. alert('非常抱歉,订单提交失败,请联系网站客服。');
- 29. return false;
- 30. }
- 31. });
- 32. return false;
- 33.});
- 34.})
复制代码 |