2

我有<button onclick="doSomething();">Do something</button>内部form_for帮手。点击它会导致表单提交。相反,我只想为它的意图做一些客户端工作。
我怎样才能实现它?

编辑:我只能将<button>标签用于我的目的,如果我可以将它放在表单中会很好。

4

3 回答 3

2

这很简单:只需添加 返回假;. 参见示例:

<button onclick="doSomething();return false;">Do something</button>

我需要周末休息和 5 分钟后谷歌搜索 :)

于 2012-04-15T19:52:12.540 回答
1

编辑:工作方法<form> 确保你的按钮是这样写的: <input type="button" onclick="doSomething()">

您可以通过它的索引选择表单。因此,如果这是<form>您网页上的第一个元素,它的索引将为 0。依此类推。索引是元素的顺序。如果您对此有疑问,您可以随时命名您的表单并按名称选择它。就是这样:

var form = document.forms[0]; //selecting by index
var namedForm = document.forms["someForm"]; //Selects <form name="someForm">
var name = form.elements["nameInput"].value; //Selects <input type="text" name="nameInput">

等等。如果您遇到任何麻烦,请告诉我。

于 2012-04-13T17:43:39.587 回答
0

<button onclick="doSomething();void(0)">Do something</button>

尽管从 JavaScript 中挂钩按钮的单击事件通常是更好的做法,但可以分离关注点。

于 2012-04-13T17:42:13.470 回答