Justin Skiles
Justin Skiles

Reputation: 9513

Why is <input type="button"> submitting a form?

<form name="callEventForm" method="post" action="/PDC/callevent.do">

     ...

     <input type="button" value="Save" name="addCallEvent" id="addCallEvent" onclick="alert('You clicked me!')"/>

     ...

 </form>

When clicking this "Save" button, the form is submitted instead of displaying the alert. I was lead to believe that type="button" would cause the form to not submit on click.

Upvotes: 1

Views: 3189

Answers (2)

Justin Skiles
Justin Skiles

Reputation: 9513

I hate to answer my own questions but this was a weird one. There was an ajax:updateField tag that was overriding the onclick event of the button. Changing the source event of the ajax:updateField allowed my established onclick event to fire appropriately. I know that there's no way anyone would have caught that based on the code I posted, but the rest of the page is so much code that I would hate to make people wade through it.

Upvotes: 0

mawcsco
mawcsco

Reputation: 624

Change:

onclick="alert('You clicked me!')"

To:

onclick="alert('You clicked me!');return false;"

Upvotes: 3

Related Questions