Html根据单击的按钮提交值

时间:2015-05-15 14:25:07

标签: html

是否可以根据点击的按钮提交隐藏的名称值对?

这是我的表格:

<form action="POST" action="">
    <button>
        <input type="hidden" name="vote" value="up"/>
        vote up!
    </button>
    <button>
        <input type="hidden" name="vote" value="down"/>
        vote down
    </button>
</form> 

由于某种原因,我收到的名称值对总是后者(第一个被替换)。例如,用户点击了&#39;投票结果&#39;,我仍然得到$input['vote'] = up

有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

这是因为您将它们都放在表单中,以便服务器接收的参数看起来像

vote=up&vote=down

假设您使用php关联数组访问它,您将始终在具有相同键的条目中收到最新值。除此之外,为什么不呢

<form action="POST" action="">
<button>
    <input type="hidden" name="vote" value="up"/>
    vote up!
</button>
</form> 

<form action="POST" action="">
<button>
    <input type="hidden" name="vote" value="down"/>
    vote down
</button>
</form> 

答案 1 :(得分:2)

通常使用多个提交按钮,您只需为每个按钮指定名称和值:

<form action="post" action="">
    <button type="submit" name="vote" value="up">vote up!</button>
    <button type="submit" name="vote" value="down">vote down!</button>
</form>

只能提交一个按钮,因此只会发送其中一个值。在接收端,脚本既不知道也不关心您使用的输入类型,因此它将看到您想要的结果。

编辑:我添加type="submit"表示完整性,但这应该是不必要的。