I have an HTML form with a single submit
input, but also various button
elements. When the user presses the 'enter' key, I'd expect it to actually submit the form, but instead (within Chrome 15 at least) I'm finding that it's triggering the first button
(since that occurs earlier in the HTML than the submit
input, I guess).
I know that in general you can't force browsers to favour a particular submit
input, but I really thought they would favour submit
inputs over button
elements. Is there a small tweak I can make to the HTML to make this work, or am I going to have to embrace some kind of Javascript approach?
Here's a rough mockup of the HTML:
<form action="form.php" method="POST">
<input type="text" name="field1"/>
<button onclick="return myFunc1()">Button 1</button>
<input type="submit" name="go" value="Submit"/>
</form>
You don't need JavaScript to choose your default submit button or input. You just need to mark it up with
type="submit"
, and the other buttons mark them withtype="button"
. In your example: