如何获取单击jquery的提交按钮

时间:2018-01-04 16:07:53

标签: javascript jquery

我想根据点击的提交按钮为所需的fiel定义规则:

<div class="align-right">
        <button type="submit" name="action" id="action" value="opt1">Option 1</button>
        <button type="submit" name="action" id="action" value="opt2">Option 2</button>
</div>

我在表单底部有两个按钮:

session(['random' => [[1, 18, 5], [4, 3, 8], [3, 9, 14], ....]]);

问题是,获得的值$(“#action”)。val()总是“opt1”,无论我点击按钮

2 个答案:

答案 0 :(得分:1)

首先,id应该是唯一标识符。您不能有两个具有相同ID的按钮。

其次,两个submit按钮没有任何意义,因为提交操作没有连接到按钮 - 提交了表单,而不是按钮,这样你甚至可以拥有{ {3}}独立于按下按钮。

您想要的是将两个按钮都设置为type="button"并以不同方式处理它们的行为。有点像:

<div class="align-right">
        <button type="button" name="action" value="opt1" onclick="handleClickOpt1()">Option 1</button>
        <button type="button" name="action" value="opt2" onclick="handleClickOpt2()">Option 2</button>
</div>

然后,既然你正在使用jQuery,那么你可以submit这些处理函数中的表单,无论你正在寻找什么行为。

然而,你应该问一个不同的问题:为什么你需要两个提交表单的按钮但行为不同?为什么不使用复选框来切换按钮功能呢?

答案 1 :(得分:0)

这是因为according to the specs,当您在页面上有两个具有相同ID的元素时,HTML / JS很奇怪。尝试将id="action"转换为不同的内容,看看它是否更有效。