我可以让 <button> 不提交表单吗?
2010-07-23
484067
我有一个表单,上面有两个按钮
<a href="index.html"><button>Cancel changes</button></a>
<button type="submit">Submit</button>
我也在它们上面使用了 jQuery UI 的按钮,就像这样
$('button').button();
但是,第一个按钮也会提交表单。我原以为,如果它没有
type="submit"
,它就不会提交表单。
显然我可以做到这一点
$('button[type!=submit]').click(function(event) { event.stopPropagation(); });
但是,有没有办法可以阻止后退按钮提交表单而无需 JavaScript 干预?
老实说,我使用按钮只是为了用 jQuery UI 来设置它的样式。我尝试在链接上调用
button()
,但它没有按预期工作(看起来相当丑陋!)。
3个回答
button
元素的
type
属性的默认值为“submit”。将其设置为
type="button"
可生成不提交表单的按钮。
<button type="button">Submit</button>
用 HTML 标准 的话来说:“不执行任何操作。”
Josh Lee
2010-07-23
s4y
2010-07-23
只需使用传统 HTML 即可:
<input type="button" value="Submit" />
如果您愿意,可以将其包装为链接的主题:
<a href="http://somewhere.com"><input type="button" value="Submit" /></a>
或者,如果您决定希望 JavaScript 提供其他功能:
<input type="button" value="Cancel" onclick="javascript: someFunctionThatCouldIncludeRedirect();"/>
Jeffrey Blake
2010-07-23