返回false在IE中不起作用

时间:2012-05-07 12:24:51

标签: internet-explorer onsubmit

我遇到了一个奇怪的小问题。在表单提交后搜索修复页面的刷新后,我发现您可以使用“return false”。我很高兴看到它在FF中有效,但是当我在IE中尝试时...它仍然刷新了页面。

这是代码的重要部分:

<form action="" onsubmit="event.preventDefault(); showAddress(this.address.value); return false">
    <table cellspacing="0" cellpadding="0" border="0">
        <tr>
            <td><h3>address:</h3></td>
        </tr>
        <tr>
            <td><input type="text" size="60" name="address" value="" /></td>
            <td>&nbsp;</td>
            <td><button type="submit" value="Zoek!">Zoek!</button></td>
        </tr>
    </table>
</form>

如何确保它不会在IE中刷新?

提前致谢!

修改 我现在改了它,所以我不再使用表格。相反,我使用按钮的onclick事件。感谢Shin指出我的错误。

<table cellspacing="0" cellpadding="0" border="0">
   <tr>
      <td><h3>address:</h3></td>
   </tr>
   <tr>
      <td><input type="text" size="60" name="address" value="" /></td>
      <td>&nbsp;</td>
      <td><button type="submit" onclick="showAddress(this.value); value="Zoek!">Zoek!</button></td>
   </tr>
</table>

3 个答案:

答案 0 :(得分:0)

您可以将preventDefault()放在提交按钮的onclick事件上。

答案 1 :(得分:0)

在JS中处理按钮的onclick事件,并在JS处理程序中添加以下行

//e.cancelBubble is supported by IE - this will kill the bubbling process.
e.cancelBubble = true;
e.returnValue = false;

答案 2 :(得分:0)

您可以通过点击功能调用所有功能