HTML表单:带文本字段的单选按钮

时间:2012-10-15 02:40:44

标签: html forms

这似乎是一个简单的问题,但是我如何创建一个具有一系列单选按钮选项的基本HTML表单,最后一个是填充自定义响应的文本字段(即“其他”)。 / p>

我现在拥有的:

    Reason given for stop? <br>
    <input type="radio" name="reason" value="Fit Description">Fit Description<br>
    <input type="radio" name="reason" value="Suspicious Behavior">Suspicious Behavior<br>
    <input type="radio" name="reason" value="No Reason Given">No Reason Given<br>
    <input type="radio" name="reason" value="">Other<br>

4 个答案:

答案 0 :(得分:22)

只需添加一个文本输入字段即可。

Reason given for stop? <br>
    <input type="radio" name="reason" value="Fit Description">Fit Description<br>
    <input type="radio" name="reason" value="Suspicious Behavior">Suspicious Behavior<br>
    <input type="radio" name="reason" value="No Reason Given">No Reason Given<br>
<input type="radio" name="reason" value="">Other <input type="text" name="other_reason" />​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

<强> jsFiddle example

答案 1 :(得分:2)

  1. 创建一个文本字段,并将其设置为display:none;
  2. 然后使用jQuery检测何时选中“其他”单选按钮并显示文本框。
  3. 然后在您的流程脚本上,执行if语句以查看单选按钮组的值是否为“”(无),并获取文本框的发布数据并使用它执行所需的操作。

答案 2 :(得分:0)

只需按正常方式添加文本字段,但为其提供与其他字段相同的名称属性,这样在访问它们时您将获得其中一个。

在JavaScript中(我假设您将使用?)只是访问这些元素并检查文本字段是否为空,如果是获取单选按钮。

答案 3 :(得分:0)

有一种简洁的方法可以在不使用函数或Javascript(jQuery)的情况下在单选按钮旁边添加文本字段。 只需在HTML表单顶部添加无线电btn(其他)和旁边的文本字段即可。这是我使用的:

颜色

<input type="radio" name="title[<?=$red?>][color]" value="" <?php if ($row['color'] != ' ') {echo 'checked';} ?> />Other <input type="text" name="title[<?=$red?>][color]" value="<?php echo $row['color'] ?>" style="width: 200px;" /> |

<input type="radio" name="title[<?=$red?>][color]" value="natural" <?php if ($row['color'] == 'natural') {echo 'checked';} ?> />natural|

<input type="radio" name="title[<?=$red?>][color]" value="stain" <?php if ($row['color'] == 'stain') {echo 'checked';} ?> />stain |

<input type="radio" name="title[<?=$red?>][color]" value="white" <?php if ($row['color'] == 'white') {echo 'checked';} ?> />white|

基本上你没有把值放在“其他”无线电输入上,而是放在文本输入上,所以无论你在文本字段中写什么,都会发送到db - 它在FORM中的第一个字段。如果文本字段中没有任何内容 - 将处理另一个已检查的无线电输入。

希望这有帮助。