单击带有JQuery的特定提交按钮

时间:2011-11-30 00:32:23

标签: jquery jquery-selectors

我点击提交按钮:

$('input[type=submit]').click(); 

问题是我的页面上有更多1个提交按钮,所以我需要定位一个特定的提交按钮。

我怎么能这样做?

6 个答案:

答案 0 :(得分:28)

如果您知道submit输入的数量以及您想要触发click的哪一个(按顺序),那么您可以使用nth-child()语法来定位它。或者为每个将它们与另一个分开的ID或类添加。

按索引选择元素:

$('input[type="submit"]:nth-child(1)').trigger('click');//selects the first one
$('input[type="submit"]:nth-child(2)').trigger('click');//selects the second one
$('input[type="submit"]:nth-child(100)').trigger('click');//selects the 100th one

实际上有几种方法可以做到这一点,包括使用.eq()http://api.jquery.com/eq

按ID分类选择元素:

<input type="submit" id="submit_1" />
<input type="submit" id="submit_2" />
<input type="submit" id="submit_100" />

<script>
$('#submit_100').trigger('click');
</script>

请注意,.click().trigger('click')的缩写。

答案 1 :(得分:7)

如果您向input添加标记,例如特定ID或类,则可以使您的选择器更具体。例如,如果您按下按钮,则需要form-btn ID,如下所示:

<input type="submit" id="form-btn" />

您可以这样选择:

$('input[type=submit]#form-btn').click();

或者只是:

$('#form-btn').click();

答案 2 :(得分:4)

id添加到每个按钮,然后使用jQuery选择id

或者,如果表单有id个,那么只需定位表单并按如下方式提交:

$("#form-id").submit();

答案 3 :(得分:2)

方式迟到,但如果您的提交按钮有名称:

$("input[name='submitbuttonname']").click();

答案 4 :(得分:1)

另一个建议!

我有一个包含多个提交的表单,它还具有不同的值属性,因此在执行内置确认后,我无法简单地提交表单。

相反,我添加了一些隐藏的按钮,在我从确认书中收到“是”后,我强行点击了一下。

以下是按钮:

<button id="email" name="email" type="submit" class="submit radius confirmation" value="all"><?php echo $this->__('Email Receipts to Selected'); ?></button>
<button id="email-french" name="email-french" type="submit" class="submit radius confirmation" value="all"><?php echo $this->__('Email French Receipts to Selected'); ?></button>
<button id="helper-email" name="email" type="submit" class="submit hide" value="all"></button>
<button id="helper-email-french" name="email-french" type="submit" class="submit hide" value="all"></button>

这里是jQuery:

<script type="text/javascript">
jQuery(function ($) {
    $('[id^=email]').on('click', function (e) {
        e.preventDefault();

        var button = $(this);

        notify.confirm(<?php echo json_encode($this->__('Are you sure?')); ?>, function (ans) {
            if (ans) {
                $('#helper-' + button.attr('id')).click();
            }
        });
    });
});
</script>

答案 5 :(得分:-1)

嗯,它无法使用带有完整

的向导表单
$("#renqform").validate().settings.ignore = ":disabled";
return $("#renqform").valid();