IE 8,jQuery 1.7.1 $(element).parents(selector)也返回兄弟姐妹

时间:2013-07-04 03:36:58

标签: jquery internet-explorer-8 parents

我有一个具有此布局的表单:

<div class='detail'>
    <div>
        <input type='button' class='save' />
    </div>
</div>
<div class='detail'>
    <div>
        <input type='button' class='save' />
    </div>
</div>
<div class='detail'>
    <div>
        <input type='button' class='save' />
    </div>
</div>

触发$(".save").click()时。我打电话给$(this).parents(".detail")

对于IE,这是发生的事情: - 选择了父<div class='detail'>以及之前的<div class='detail'>兄弟姐妹。

对于FF,这是发生的事情: - 仅返回父<div class='detail'>

我正在寻找的正确功能是FF正在做的事情。

我是否知道如何为IE进行解决方案。

谢谢。

编辑: 这是click事件处理程序:

$(".product_details .button_save_draft").bind("click", function (event) {
    event.preventDefault();
    alert($(this).parents(".product_details").length);
});

1 个答案:

答案 0 :(得分:0)

我不知道为什么上述内容如上所述,但作为一种解决方案,您可能需要查看.closest()

$(".product_details .button_save_draft").bind("click", function (event) {
    event.preventDefault();
    alert($(this).closest(".product_details").length);
});

另见difference between them