IE10在页面上找到第一个按钮,并在输入提交时触发点击事件

时间:2012-11-21 16:25:01

标签: javascript forms submit internet-explorer-10

对标题感到抱歉,我知道它很乱,但我不知道如何描述这种情况。

我们有一个输入字段。但没有形式元素。这是代码

<input name="search" id="search" onkeypress="SearchBox(this.value);" type="text" value="Search"/>
<input name="searchbutton" align="left" class="okbutton" id="searchbutton" onclick="SearchBox(search.value);" type="button"/>

SearchBox函数检查keycode,如果是13(输入按钮charcode)发送搜索请求。此代码适用于IE8 / 9,但在IE10中有一些有趣的行为。

上面的代码中间页面。我们在登录页面顶部有一个按钮元素。

在IE10中

;

我在输入中输入一个单词并按回车:

  • SearchBox功能,
  • 但也表现出像LOGIN按钮一样,这是一个问题

注意:抱歉语言,英语不是我的母语。 注2:删除了SearchBox()函数。检查jsfiddle链接以获取最新代码。

3 个答案:

答案 0 :(得分:18)

另一种解决方案

将按钮类型定义为按钮。因为默认类型是提交

<button type="button" ....

答案 1 :(得分:3)

嗯,Windows7的IE10是一个预发行版,这似乎是MS应该解决的问题之一。无论如何,我不知道为什么会发生这种情况,但我找到了解决问题的方法:

而不是button,请使用<input type="button">

jsFiddle的现场演示。

答案 2 :(得分:0)

我遇到了同样的问题。在我的所有按钮上添加type =“button”。   &lt; button type =“button”&gt; ...

即使我的按钮不在表格中。

从其他测试中我已经完成了IE 10的工作,就像Chrome一样。这是我见过的唯一例外。