JQuery然后向下遍历

时间:2014-05-25 04:52:50

标签: jquery

我有以下结构:

<div>
    <button class="buttonClass">Click Me</button>
</div>
<div>
    <form id="formID">...</form>
</div>

提交表单时,我想模拟点击buttonClass

类按钮

这就是我正在尝试的但它没有找到按钮并模拟点击:

$.ajax({
    type: "POST",
    url: URL,
    context:this,
    data: $(this).serialize(),
    success: function (data) {
        $(this).closest('.buttonClass').click(); // not finding button
    }
});

页面上有多个表单和按钮,所以我只想点击最近的buttonClass

2 个答案:

答案 0 :(得分:1)

假设$(this)是表单,因为您使用$(this).serialize $(this).closest('.buttonClass').click()无法找到该按钮,因为它不是表单的祖先,而是在其他地方。

你需要一个包含表格和按钮的祖先来遍历

<div class="wrapper">
    <div>
        <button class="buttonClass">Click Me</button>
    </div>
    <div>
        <form id="formID">...</form>
    </div>
</div>

然后你就可以找到它

$(this).closest('.wrapper').find('.buttonClass').click();

答案 1 :(得分:1)

我认为当前上下文中的$(this)引用了表单元素。你可以使用:

$(this).parent().prev().find('.buttonClass').click();