19

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

我现在拥有的:

    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

4 回答 4

28

只需向其中添加一个文本输入字段。

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 示例

于 2012-10-15T02:43:22.897 回答
4
  1. 创建一个文本字段,并将其设置为 display:none;
  2. 然后使用 jQuery,检测“其他”单选按钮何时被选中并显示文本框。
  3. 然后在您的流程脚本上,执行 if 语句以查看您的单选按钮组的值是否为“”(无),并获取文本框的发布数据并使用它执行您想要的操作。
于 2012-10-15T02:44:37.570 回答
0

只需像往常一样添加一个文本字段,但为其赋予与其他文本相同的名称属性,这样在访问它们时您将获得其中一个。

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

于 2012-10-15T04:55:12.703 回答
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 中的第一个字段。如果文本字段中没有任何内容 - 将处理其他选中的无线电输入。

希望这可以帮助。

于 2017-07-20T08:26:49.033 回答