只有一个值可以在表单上提交

时间:2011-09-15 16:03:16

标签: html forms

我有一个包含这些字段的表单,出于某种原因,尽管您选择了“否”单选按钮,但只有“是”才会出现。

任何想法为什么以及我做了什么都有什么问题?

<label>
    <input type="radio" name="attendance" value="No" id="attendance" />
    Yes</label> 
<label>
  <input type="radio" name="attendance" value="Yes" id="attendance" />
    No</label>

6 个答案:

答案 0 :(得分:2)

<label>
    <input type="radio" name="attendance" value="No" id="attendance" />
    No</label> 
<label>
  <input type="radio" name="attendance" value="Yes" id="attendance" />
    Yes</label>

您的标签为No,而单选按钮的值为Yes:)

正如其他人所说:你不能拥有两个具有相同id的元素。您可以使用class进行此操作。

答案 1 :(得分:1)

请改用:

<label>
    <input type="radio" name="attendance" value="Yes" id="attendance-yes" />
    Yes</label> 
<label>
  <input type="radio" name="attendance" value="No" id="attendance-no" />
    No</label>

你的标签和你的价值被颠倒了......

答案 2 :(得分:0)

对于两个元素,您不能拥有相同的id。移除id或指定不同的ids

答案 3 :(得分:0)

id应该是唯一的,因此您应该为元素赋予不同的身份。

我不确定这是否是问题的原因,但这是您所显示的代码中唯一的错误。如果这没有帮助,则问题在于您未显示的代码部分。


正如其他人所提到的,你已经在单选按钮上交换了值和标签,但这似乎太明显了......

答案 4 :(得分:-1)

我看到代码中有两个错误:

  • 标签标签应仅包围有效标签(不是输入标签)
  • 这两个项目具有相同的ID,我认为这就是为什么你总能得到相同的结果

答案 5 :(得分:-1)

您可能会区分ID,因为它应该是唯一的。您还可以使用属性for作为标签标记。

像这样:

<label for="attendanceyes">
    <input type="radio" name="attendance" value="Yes" id="attendanceyes" />
    Yes
</label>

<label for="attendanceno">
    <input type="radio" name="attendance" value="No" id="attendanceno" />
    No
</label>