If an HTML form has two <input type="submit"> buttons, how do I know which got clicked?

Yes, you can rely on this; it's fully documented here. The specific relevant lines say:

When a form is submitted for processing, some controls have their name paired with their current value and these pairs are submitted with the form. Those controls for which name/value pairs are submitted are called successful controls.

and

If a form contains more than one submit button, only the activated submit button is successful.


Yep you can rely on that behaviour.

When <input type="submit" name="queue" value="Queue item"> is clicked, the field "queue" will be set and "submit" will not be.

Whereas when the other gets clicked, the field "submit" will be set, and "queue" will not be.

If you're not assured by this, you can split them into 2 forms and work on it that way.


You can rely on this behavior. You get the value of the input. I would use javascript to toggle a hidden form value, but since you mentioned no javascript you do not have multiple choices.

It's a standard. Since it's an input tag, and has a value, that means you get the value submitted.