我有一个表单,有两个按钮

<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(),它没有像预期的那样工作(看起来很难看!)。


当前回答

<form onsubmit="return false;">
   ...
</form>

其他回答

按钮元素的type属性的默认值是“submit”。将其设置为type="button"以生成一个不提交表单的按钮。

<button type="button">Submit</button>

用HTML标准的话说:“什么都不做。”

没有设置类型属性,你也可以从你的OnClick处理程序返回false,并声明OnClick属性为OnClick ="return onBtnClick(event)"。

<form onsubmit="return false;">
   ...
</form>

button元素的默认类型是submit。

你可以通过设置按钮类型让它什么都不做:

<button type="button">Cancel changes</button>

使用传统的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();"/>