On Feb 14, 2011, at 4:18 PM, Paul M Foster wrote: > On Mon, Feb 14, 2011 at 03:35:02PM -0400, Paul Halliday wrote: > >> I have 2 buttons on a page: >> >> if (isset($_POST['botton1'])) {dothing1();} >> if (isset($_POST['button2'])) {dothing2();} >> >> They both work as intended when I click on them. If however I click >> within a text box and hit enter, they both fire. >> >> Is there a way to stop this? > > Check your code. My experience has been that forms with multiple submits > will fire the *first* submit in the form when you hit Enter in a text > field or whatever. I just tested this and found it to be true. > > Now, I'm doing this in Firefox on Linux. I suppose there could be > differences among browsers, but I suspect that the specs for HTML > mandate the behavior I describe. > > Paul > If you don't mind using a little JavaScript you can test for which button should fire when enter is pressed. How I would do it is to first add a hidden field and call it "buttonClicked". Now, in the text field where you would like a button to fire if enter is pressed, at this to the tag: onkeyup="checkKey(this,event)". For the JavaScript portion of it, do this: function checkKey(element,evt) { var buttonClicked="" if(evt.keyCode=13) { if(element.name="field1") { buttonClicked="button1" } else if(element.name=="field2") { buttonClicked="button2" } if(buttonClicked) { document.formName.buttonClicked.value=buttonClicked document.formName.submit() } } } Hope that helps! Take care, Floyd -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php