您好我有一个表单,允许用户检查他们喜欢的多个选项,然后点击提交。有没有办法让输入类型'复选框'提交多个值?
例如我现在有:
<input type="checkbox" value="testuser">
但我想要的是:
<input type="checkbox" value="testuser" valuetwo="1">
有没有办法实现第二种选择? 谢谢!
由于无法提交值,是否有办法在值1中提交它们? 例如:
<input type="checkbox" value="testuser,1">
如果是这样,我怎么把这个值分成两个?
答案 0 :(得分:6)
根据您的评论,听起来您有一些JavaScript在提交之前处理数据。如果是这种情况,您可以向复选框添加数据属性。要使用您的示例,您可以将其称为data-valuetwo
。
<input type="checkbox" value="testuser" data-valuetwo="1">
然后,您的JavaScript可以使用getAttribute
检索data-valuetwo
属性中的值并进行相应处理。它可能看起来像这样:
var valuetwo = checkbox.getAttribute("data-valuetwo");
答案 1 :(得分:0)
您可以尝试使用select2替代方案,请参阅:https://select2.github.io/examples.html(标记支持,使用两个选项限制)。同样,没有足够的信息来完全满足您的问题。
选择框和JSON的另一种方法是Can an Option in a Select tag carry multiple values?(可以为复选框重写)
答案 2 :(得分:0)
我找到了一种方法,而无需使用隐藏表单域的JavaScript或库:
<input name="selectedValue" type="hidden" value="defaultValue">
<input name="selectedValue" type="checkbox" value="secondValue">
现在,如果未选中此复选框,则发送隐藏值,如果选中,则将覆盖隐藏值。