0

我制作了一个 html 表单,其中包含一些不应发布表单的按钮。他们只应该做一些javascript动作。但是当这些按钮被点击时,它们会触发一个发布请求。按钮的 html 代码如下所示:

<button class="btn" id=some_id>
</button>

如您所见,没有什么特别的。有没有办法阻止这些按钮发布表单?

我用了

$('.btn').bind('click', function() {
    some_js_code
});

将一些 js 功能绑定到按钮。
解决方案:

$('.btn').bind('click', function() {
    some_js_code
    return false;
});
4

3 回答 3

4

您可以添加一个 onClick 处理程序并返回 false 以防止默认行为。例如:

<button class="btn" id=some_id onClick="alert('do stuff'); return false;">
</button>

尽管正如 Anthony Grist 指出的那样,内联属性并不是一种很好的做事方式。

于 2012-08-28T10:36:21.960 回答
0

不应该有类似的东西onclick="javascriptfunction()"吗?

于 2012-08-28T10:23:05.327 回答
0

根据W3Schools

您可以在元素内放置内容,例如文本或图像。这是此元素与使用该元素创建的按钮之间的区别。

type="button"因此,如果您真的希望它被视为没有帖子的虚拟按钮 ,您仍然需要添加。

你提到你正在使用 JavaScript,所以你也可以设置

cancelBubble = true MSDN cancelBubble 属性

event.preventDefault() jQuery preventDefault

于 2012-08-28T10:26:14.957 回答