javascript表单提交在chrome中不起作用

Lin*_*nto 5 javascript google-chrome

我有以下html:

<body>
<form action="site1">
    <input type="image" name="submit" border="0" src="images/front/search_travel.png" alt=""  onclick="provider_popup();"/>
</form>

<form  name="frmRight1"  action="site2" target="_blank" >
    <input type="hidden" name="sector_id" id="sector_id" value="90" />
    <input type="submit" style="visibility:hidden;" />
 </form>

 <script type="text/javascript">
 function provider_popup (){
        document.frmRight1.submit();
        return false;
  } 
</script>
</body>
Run Code Online (Sandbox Code Playgroud)

当我提交带有名称的按钮时submit,我得到另一个标签,它将加载'site2'

但是这个过程不适用于chrome.

让我知道原因

Jam*_*ack 5

好的,您还需要阻止图像按钮提交其表单。您的函数返回 false,但您需要将其返回给 onclick,因此出现了问题。像这样做:

onclick="return provider_popup();"

我建议您无论如何放弃这种<input type="image">方法,并使用带有属性的纯元素onclick。使你的 HTML 更加简单,即

<body>
    <img src="images/front/search_travel.png" alt="Submit" onclick="provider_popup();" />

    <form  name="frmRight1"  action="site2" target="_blank" >
        <input type="hidden" name="sector_id" id="sector_id" value="90" />
        <input type="submit" style="visibility:hidden;" />
    </form>

     <script type="text/javascript">
     function provider_popup () {
            document.forms['frmRight1'].submit();
      } 
    </script>
</body>
Run Code Online (Sandbox Code Playgroud)

另一种选择是将图像包裹在锚点中<a href...,然后onclick对其应用。