我点击提交按钮:
$('input[type=submit]').click();
问题是我的页面上有更多1个提交按钮,所以我需要定位一个特定的提交按钮。
我怎么能这样做?
答案 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();