弹出表单提交崩溃IE9

时间:2012-03-06 14:45:19

标签: forms internet-explorer popup submit

除了IE之外,所有浏览器都可以使用我的代码。你知道我能做得更好吗?还能用IE运行吗?

<script>

  function submitForm(formId) {
    var w = window.open('', 'myPopup', "width=600, height=600");
    $(formId).attr('target', 'myPopup');
    $(formId).submit();
    w.focus();
    return false;
  }
</script>


<form target="myPopup" onsubmit="return submitForm(this);" method="post" action="" name="myForm" id="myForm">
  <input type="submit" />
</form>

1 个答案:

答案 0 :(得分:0)

我发现了。我只想评论“onsubmit”处理程序产生无限循环。然后我找到了bug report

  

如果您想提交表单,则需要访问表单的提交   方法,例如, $( '形式')[0] .submit()。当你拨打$('form')时,submit()   您正在生成提交事件,因此您的事件处理程序将被调用   在一个无限循环中。

所以解决方案是改变

$(formId).submit();

$(formId)[0].submit();