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>
I just hit a problem with this. Mine was a fall off from changing the
input
to abutton
and I'd had a badly written/>
tag terminator:So I had:
And have just amended it to:
Now works like a charm, always the annoying small things... HTH
Try this, if enter key was pressed you can capture it like this for example, I developed an answer the other day html button specify selected, see if this helps.
Specify the forms name as for example
yourFormName
then you should be able to submit the form without having focus on the form.You can use jQuery:
Given there is only one (or with this solution potentially not even one) submit button, here is jQuery based solution that will work for multiple forms on the same page...
I just gave this a whirl in both Chrome and Firefox and IE10.
As mentioned above - make sure that you have marked up with type = "button", "reset", "submit" etc to ensure that it correctly cascades and chooses the correct button.
Perhaps also setting all of them to have the same form (ie all as that worked for me)