是否可以根据点击的按钮提交隐藏的名称值对?
这是我的表格:
<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
有谁知道如何解决这个问题?
答案 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"
表示完整性,但这应该是不必要的。