[edit Initially I misunderstood the situation and posted a different answer.]
Doesn't work in Chrome for me either (4.0.223.11).
The problem is the difference in treating <input>s without a <form> -- if you add an enclosing <form> element, the onclick element fires (you should still use the form's submit handler instead, as Johannes Rössel rightly recommends.
[edit added a note about HTML5]
Note that HTML5 spec mentions dispatching the click event on the submit button:
User agents may establish a button in each form as being the form's default button. This should be the first submit button in tree order whose form owner is that form element, but user agents may pick another button if another would be more appropriate for the platform. If the platform supports letting the user submit a form implicitly (for example, on some platforms hitting the "enter" key while a text field is focused implicitly submits the form), then doing so must cause the form's default button's activation behavior, if any, to be run.
Note that implementing Enter-based activation is not required (although it is implemented in the desktop browsers), and the "activation method" (click event) can be used when the input is a part of a form ("has a form owner"). The definition of the "form owner" is based on having a <form> parent or a form
attribute.
I don't see the discussion that led to this decision, so if you have questions, you can ask on public-html mailing list where the spec is discussed.