onsubmit 验证多个 funciton后提交问题?
js如下:funcitoncheckForm(){if(){//functiona和functionb都为TRUEreturntrue;}else{returnfalse...
js如下:funciton checkForm(){if(){//function a和function b都为TRUEreturn true;}else{return false;}} funciton a(){//验证用户名if(){//成功return true;}else{//DIV显示错误内容return false;}}funciton b(){//验证密码if(){//成功return true;}else{//DIV显示错误内容return false;}} JSP代码如下:<form onsubmit="return checkForm()"><input type="text" onBlur="a()"><input type="text" onBlur="b()"></form> 由于在输入框失去焦点后马上进行验证,所以用到多个funciton,而最后表单提交时onsubmit的checkForm()需要所有funciton()都返回true,才能让表单提交,如何实现checkForm()的功能?或者如何将其他funciton()整合成一个funciton()而不影响text在失去焦点时的DIV显示功能?万分感谢!
展开
2013-07-12
展开全部
funciton checkForm(){if(a() && b()){//function a和function b都为TRUEreturn true;}else{return false;}} 如果再有c,d,e也是同样道理:if(a() && b() && c() && d() && e() ) 每项都单独一个function,然后总的再用checkForm,只需要在checkForm验证一下所有的function是否为true即可所以你和第一种方法是正确的,而且必需这样处理的;function checkForm(){if(a() && b() && c() && d() && e() ){return true;}else{return false;}} 你的不成功是因为取值方法是错的:正确的为:var num=document.getElementById("cnum").value;
var score=document.getElementById("cscore").value;
var sub=document.getElementById("csub").value;
另外还有一个问题:chechNum(num)里面,你的参数是一个对像,而你在checkForm里给的确是一个值;你可以改为:var num=document.getElementById("cnum");
var score=document.getElementById("cscore");
var sub=document.getElementById("csub");
var score=document.getElementById("cscore").value;
var sub=document.getElementById("csub").value;
另外还有一个问题:chechNum(num)里面,你的参数是一个对像,而你在checkForm里给的确是一个值;你可以改为:var num=document.getElementById("cnum");
var score=document.getElementById("cscore");
var sub=document.getElementById("csub");
2013-07-12
展开全部
我把全面的回答删除了,重新给楼主一个清晰的思路吧。 1、你的onSubmit="return checkForm(this);"是正确的,一定要在函数名前加上return 这样在函数内任意位置出现return false时可以自动终止函数。2、2个判断集中在1个函数checkForm内。 function checkForm(){ //写个大概意思 具体语句请楼主完善 if (num1==""){display1=block; return false;} if (num2==""){display2=block; return false;} return true;} 由于调用时加上了return checkForm();所以执行到js里的return false的时候就不会继续往下执行了;如果一直未被中断则执行到最后提交表单。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-12
展开全部
onsubmit这个事件是在表单提交时调用的,也就是当你点击提交按钮时,才会触发这个事件。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询