form的onsubmit事件--表单提交前的验证最佳实现方式

连续2天,在进行form表单包括上传表单的提交操作时,刚开始用struts2自带的上传模式与后台进行交互,但原来的页面是用html做的,不能通过国际化资源来返回后台操作的错误信息于静态的html,之后我又百度了许多ajax异步与后台交互的方法,如ajaxForm,ajaxSubmit,ajaxFileUpload等,用的是心力交瘁,各种错误抛出,然后还尝试easyui的表单提交,还是不成...这一切的目的都是为了实现异步交互,不让当前页面跳转,使用ajax实现文件上传的异步刷新,最后还是死心了,使用传统的struts2的result成功和错误跳转;结构定了,接着,就是要在表单提交前统一进行验证。心想,form应该也有提交前的事件,上网一查,真有,就是onsubmit。此事件的功能就是在表单提交前自动执行指定的东西。

js方法:

 1 function check(){
 2    var name = document.getElementById("name").value;
 3    if(name ==  null || name == ''){
 4         alert("用户名不能为空");
 5         return false;
 6    }
 7    return true;
 8 }
 9 
10 <form name="form" action="跳转的页面" method="post"  onsubmit="return check()">
11   <input type="text" id="name"/>
12   <input type="sumit" value="提交"/>
13 </form>


需要注意的是,onsubmit=“return check()”中的return是一定要加上的,不然check的返回值哪怕是false,仍然提交。也就是说,onsubmit=“return false”为不执行提交;onsubmit=“return true”或onsubmit=“return ”都执行提交。

posted @ 2015-08-08 23:38  要好好吃饭  阅读(65664)  评论(2编辑  收藏  举报