表单验证失败,firefox怎么还是会提交,IE能够不提交
<formaction="Default.aspx"method="post"onsubmit="chk();returnfalse;">Pleaseinputyourn...
<form action="Default.aspx" method="post" onsubmit="chk();return false;">
Please input your name:<input type="text" name="usrname" /><br>
<input type="submit" value="btn" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>
<script type="text/javascript">
function chk(){
var formct=document.getElementById("form1");
if(formct.usrname.value.length>6){
document.getElementById("form1").submit();
}
}
</script> 展开
Please input your name:<input type="text" name="usrname" /><br>
<input type="submit" value="btn" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>
<script type="text/javascript">
function chk(){
var formct=document.getElementById("form1");
if(formct.usrname.value.length>6){
document.getElementById("form1").submit();
}
}
</script> 展开
展开全部
有submit按钮firefox默认会做2件事情,submit按钮的click事件,form的submit事件,所以要if (e && e.preventDefault) e.preventDefault(); 这句改变默认事件的行为.另外firefox的event事件的作用域是局部的,所以函数调用的时候要加上event做参数
<form id="form1" action="a.html" method="post" >
Please input your name:<input type="text" name="usrname" /><br>
<input type="submit" value="btn" onclick="return chk(event);" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>
<script type="text/javascript">
function chk(e){
var formct=document.getElementById("form1");
if (e && e.preventDefault) e.preventDefault();
if(formct["usrname"].value.length>6){
document.getElementById("form1").submit();
return true;
}else{
return false;
}
}
</script>
<form id="form1" action="a.html" method="post" >
Please input your name:<input type="text" name="usrname" /><br>
<input type="submit" value="btn" onclick="return chk(event);" />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>
<script type="text/javascript">
function chk(e){
var formct=document.getElementById("form1");
if (e && e.preventDefault) e.preventDefault();
if(formct["usrname"].value.length>6){
document.getElementById("form1").submit();
return true;
}else{
return false;
}
}
</script>
展开全部
您好!很高兴为您答疑!
火狐的event事件的作用域是局部的,调用的时候要加上event做参数,应该写为:
if (e && e.preventDefault) e.preventDefault();
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
火狐的event事件的作用域是局部的,调用的时候要加上event做参数,应该写为:
if (e && e.preventDefault) e.preventDefault();
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询