我完全糊涂了...我发誓这是昨天工作的......我今天早上醒来,我的所有表格停止在我的项目中工作.
所有表单都有一个"onsubmit"函数返回false,因为它是一个ajax调用,所以表单永远不会发送.
经过大量测试后,我将问题简化为这段代码:
<html>
<head>
<script type="text/javascript">
function sub()
{
alert ("MIC!");
return false;
}
</script>
</head>
<body>
<form method = "post" id = "form1" onsubmit = "return sub()">
input: <input type="text" name="input1" >
<a href="#" onClick="document.getElementById('form1').submit();">button</a>
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我会发誓,这种方法很完美,但今天也不起作用:D
为什么我按下表格发送的按钮?
我知道这是一个全新的问题,但我被困住了
谢谢 !
小智 7
似乎'submit()'函数绕过了Firefox和IE8中的'form'标签'onsubmit'事件.如果您使用提交按钮,则它按预期工作:
<html>
<head>
<script type="text/javascript">
function sub()
{
alert ("MIC!");
return false;
}
</script>
</head>
<body>
<form method = "post" action="http://google.com" id = "form1" onsubmit = "return sub();">
input: <input type="text" name="input1" >
<input type="submit">
</form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
尝试像这样改变你的“按钮”代码
<a href="#" onClick="return document.getElementById('form1').onsubmit();">button</a>
Run Code Online (Sandbox Code Playgroud)