ale*_*lex 475 html javascript jquery jquery-ui button
我有一个表格,有2个按钮
<a href="index.html"><button>Cancel changes</button></a>
<button type="submit">Submit</button>
Run Code Online (Sandbox Code Playgroud)
我也使用jQuery UI的按钮,就像这样
$('button').button();
Run Code Online (Sandbox Code Playgroud)
但是,第一个按钮也会提交表单.我会想,如果它没有type="submit",它就不会.
显然我可以做到这一点
$('button[type!=submit]').click(function(event) { event.stopPropagation(); });
Run Code Online (Sandbox Code Playgroud)
但有没有办法可以阻止后退按钮提交表单而无需JavaScript干预?
说实话,我只使用了一个按钮,所以我可以使用jQuery UI来设置它.我试着调用button()链接,它没有按预期工作(看起来很丑!).
Jos*_*Lee 1046
元素type属性button 的默认值是 "submit".
<button type="button">Submit</button>
Run Code Online (Sandbox Code Playgroud)
s4y*_*s4y 224
该button元素的默认类型为submit.
您可以通过设置以下类型使其无效button:
<button type="button">Cancel changes</button>
Run Code Online (Sandbox Code Playgroud)
Jef*_*ake 17
只需使用旧的HTML:
<input type="button" value="Submit" />
Run Code Online (Sandbox Code Playgroud)
如果您愿意,请将其作为链接的主题包装:
<a href="http://somewhere.com"><input type="button" value="Submit" /></a>
Run Code Online (Sandbox Code Playgroud)
或者,如果您决定要javascript提供其他功能:
<input type="button" value="Cancel" onclick="javascript: someFunctionThatCouldIncludeRedirect();"/>
Run Code Online (Sandbox Code Playgroud)
Geo*_*iga 15
是的,您可以通过添加值按钮类型的属性来使按钮不提交表单:
<button type="button"><button>
Run Code Online (Sandbox Code Playgroud)
老实说,我喜欢其他答案.简单而无需进入JS.但我注意到你问的是jQuery.因此,为了完整起见,如果使用.click()处理程序返回false,则在jQuery中,它将取消窗口小部件的默认操作.
简而言之,使用示例代码,执行以下操作:
<script type="text/javascript">
$('button[type!=submit]').click(function(){
// code to cancel changes
return false;
});
</script>
<a href="index.html"><button>Cancel changes</button></a>
<button type="submit">Submit</button>
Run Code Online (Sandbox Code Playgroud)
另外一个好处是,你可以摆脱锚标签,只需使用按钮即可.
| 归档时间: |
|
| 查看次数: |
306592 次 |
| 最近记录: |