欢迎光临

木子屋

标题: 用submit()提交表单致使onsubmit失效解决方法

作者: dnawo

日期: 2007-02-02 12:01 AM

分类: 脚本语言

内容: 一、下边本文中将要用到的脚本
复制内容到剪贴板 程序代码<script language="javascript">
//表单提交
function submit1(obj){
obj.submit();
}
//表单提交，调用checked函数
function submit2(obj){
return checked();
obj.submit();
}
//表单提交,将ehecked函数内容写入submit3
function submit3(obj){
if(document.form1.username.value == ""){alert("姓名忘了填写？");document.form1.username.focus();return false;}
obj.submit();
}
//表单验证
function checked(){
if(document.form1.username.value == ""){alert("姓名忘了填写？");document.form1.username.focus();return false;}
return true;
}
</script>
二、分析过程
1.通常的表单验证法，在form中加入onsumbit事件
复制内容到剪贴板 程序代码<form id="form1" name="form1" method="post" action="mzwucom.asp" onsubmit="checked();">
UserNmae:
<input name="username" type="text" id="username" size="10" maxlength="10" />
<input type="submit" name="Submit" value="提交" />
</form>
结果：验证机制发生作用！
2.在1的基础上改为通过调用submit()方法提交表单(红色为和1相比修改部分，下同)
复制内容到剪贴板 程序代码<form id="form1" name="form1" method="post" action="mzwucom.asp" onsubmit="checked();">
UserNmae:
<input name="username" type="text" id="username" size="10" maxlength="10" />
<input type="button" name="Submit" value="提交" onclick="submit1(this.form);" />
</form>
结果：验证机制失效，表单直接提交！
3.在1的基础上去掉onsubmit事件，调用submit2
复制内容到剪贴板 程序代码<form id="form1" name="form1" method="post" action="mzwucom.asp">
UserNmae:
<input name="username" type="text" id="username" size="10" maxlength="10" />
<input type="button" name="Submit" value="提交" onclick="submit2(this.form);" />
</form>
结果：验证机制发生作用，但正确时表单没有提交，由于return true在submit()前！
4.在1的基础上去掉onsubmit事件，调用submit3
复制内容到剪贴板 程序代码<form id="form1" name="form1" method="post" action="mzwucom.asp">
UserNmae:
<input name="username" type="text" id="username" size="10" maxlength="10" />
<input type="button" name="Submit" value="提交" onclick="submit3(this.form);" />
</form>
结果：验证机制发生作用，通过则提交表单！

+ 查看当前日志评论 (1)

登录

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.641 ms

返回

标题: 用submit()提交表单致使onsubmit失效解决方法

你没有权限发表评论

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.641 ms

返回

暂无评论

返回

────────────

木子屋

PJBlog3 v3.2.9.518 Inside.

Processed In 0.688 ms

返回