IE错误地将HTML <button>视为提交按钮</button>

时间:2011-12-19 20:19:30

标签: html css internet-explorer browser cross-browser

我有两个HTML按钮;一个提交一个表单,一个关闭容器对话框。关闭它的按钮没有type属性:

<button type="submit">Submit</button>
<button class="closeDialog">Close</button>

JavaScript如下:

$(".closeDialog").live("click", function(event) {
  event.preventDefault();
  $(this).parents(".dialog").dialog("close");
});

$("form.myClass").live("submit", function(event) {
  event.preventDefault();
  // submits the form here . . .
});

所有这些在IE浏览器的每个浏览器中运行良好。在IE中,当单击“关闭”按钮时,上面的两个JavaScript事件都会执行,但只有.closeDialog事件处理程序应该执行。

IE似乎将元素视为提交按钮,无论其type属性如何。

如何在IE中解决这种误解?

2 个答案:

答案 0 :(得分:5)

在第二个上,尝试:<button type="button">

答案 1 :(得分:0)

尝试:

<input type='button' />

在大多数情况下,这适用于IE。