Satch3000 Satch3000 - 5 months ago 7
jQuery Question

Click a specific submit button with JQuery

I am clicking a submit button using this:

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


The problem is that I have more that 1 submit button on my page so I need to target a specific submit button.

How could I do that?

Answer

If you know the number of submit inputs and which one (in order) you want to trigger a click on then you can use nth-child() syntax to target it. Or add an ID or a class to each one that separates them from the other.

Selecting the elements by their index:

$('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

There are actually several ways to do this including using .eq(): http://api.jquery.com/eq

Selecting the elements by their 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>

Note that .click() is short for .trigger('click').