If I remove the <form></form> that is around the textboxes and button, the click event is triggered, but this also means that my page is not showing properly, so I wonder if there is a way to trigger the button's click event when inside the form.

Is this form added via ajax in DOM, as you use live
–
SudeshApr 24 '13 at 12:42

as per http://www.w3schools.com/tags/tag_button.aspTips and Notes Note: If you use the <button> element in an HTML form, different browsers may submit different values. Use <input> to create buttons in an HTML form.
–
rahul maindargiApr 24 '13 at 12:52

as per http://www.w3schools.com/tags/tag_button.aspTips and Notes Note: If you use the <button> element in an HTML form, different browsers may submit different values. Use <input> to create buttons in an HTML form.
–
rahul maindargiApr 24 '13 at 12:49

I don't think w3schools tips are authorative enough that the OP needs to change his element type.
–
Xotic750Apr 24 '13 at 13:13

Buttons created with the BUTTON element function just like buttons
created with the INPUT element, but they offer richer rendering
possibilities: the BUTTON element may have content. For example, a
BUTTON element that contains an image functions like and may resemble
an INPUT element whose type is set to “image”, but the BUTTON element
type allows content.

Tips and Notes Note: If you use the element in an HTML form,
different browsers may submit different values. Use to create
buttons in an HTML form.

W3cschools: HTML Tag

w3cschools are not an authorative body. As far as I can tell, the only browsers that had real issues were IE6 & IE7, so I guess their advice is a little out of date. It is possible that there are others but I could not find anything concrete. the best I could find was on MDN <\button>

IE7 has a bug where when submitting a form with Click me, the POST data sent will
result in myButton=Click me instead of myButton=foo. IE6 has an even
worse bug where submitting a form through a button will submit ALL
buttons of the form, with the same bug as IE7 This bug has been fixed
in IE8

as per http://www.w3schools.com/tags/tag_button.aspTips and Notes Note: If you use the <button> element in an HTML form, different browsers may submit different values. Use <input> to create buttons in an HTML form.
–
rahul maindargiApr 24 '13 at 12:50