Javascript 表单在Chrome/FF中正确提交,但在IE/Safari中完全失败

Javascript 表单在Chrome/FF中正确提交,但在IE/Safari中完全失败,javascript,html,css,internet-explorer,safari,Javascript,Html,Css,Internet Explorer,Safari,我有一个带有css提交按钮的表单。单击submit按钮时,我调用一个执行以下操作的函数: document.forms["request"].onsubmit(); 那么,应该触发onsubmit方法。这在Chrome/FF中正常工作,但出于某种原因,IE/Safari将绕过onsubmit函数,只需将参数“address=”添加到url中,就好像它正在提交表单并忽略onsubmit函数一样。以下是表格的代码: <form id="request" method="get"

我有一个带有css提交按钮的表单。单击submit按钮时,我调用一个执行以下操作的函数:

document.forms["request"].onsubmit();
那么,应该触发onsubmit方法。这在Chrome/FF中正常工作,但出于某种原因,IE/Safari将绕过onsubmit函数,只需将参数“address=”添加到url中,就好像它正在提交表单并忽略onsubmit函数一样。以下是表格的代码:

      <form id="request" method="get" onsubmit="addLocation(this.address.value); return false;">
        <br>
        <label style="position:relative;left:5px;" for="address">Enter an intersection or address:
        </label>
        <br>
        <br>
        <input style="height:35px; width:300px;position:relative;bottom:1px;left:10px;" id="address" name="address" class="required address"/>
        <a style="float:right;right:120px;position:relative;" class="button" onclick="submit();">
          <span>Submit Request
          </span>
        </a>
      </form>
您可以在此处测试表单:

非常感谢

不要将函数命名为“submit”,表单中已有一个同名的方法,因此它可能会与该名称冲突

您可以调用
submit
方法来提交表单,而不是
onsubmit
事件。因此,您发布表单的代码应为:

document.forms["request"].submit();

奇怪的是,Chrome和Safari是在同一个引擎上构建的,它们的行为会有所不同。
document.forms["request"].submit();