如何为“其他 - 请指定?”制作单选按钮。

时间:2009-01-02 16:10:06

标签: php html forms radio-button

我正在创建一个带有一些单选按钮选项的HTML表单。我想有一个选项为“其他 - 请指定”并允许用户输入内容。

两个问题:

1)如何制作radio/text的“混合”输入类型?

2)在PHP后端,如果输入与无线电输入具有相同的name属性,用户的输入是否会成为同一阵列的一部分?

3 个答案:

答案 0 :(得分:8)

为什么不在输入中添加不同的名称属性,只有在选择其他单选按钮后才验证它?

答案 1 :(得分:8)

我是这样做的:

<input type="radio" name="phone" value="313-375-2151">Taylor <br>
<input type="radio" name="phone" value="555-444-1234">OverheadHts <br>
<input type="radio" name="phone" value="555-333-1234">Smith Ctr <br>
<input type="radio" name="phone" value="444-344-1234">Mainsville<br>
<input type="radio" name="phone" value="other">Other:
    <input type="text" name="phone-other" size="14">

然后当你处理表格时:

$phone = mysql_real_escape_string($_POST['phone']);
if ($phone =='other'){
  $phone = mysql_real_escape_string($_POST['phone-other']);
}

答案 2 :(得分:6)

#1:对于“other:”无线电字段,添加样式为display {none}的<input type="text" ...>,仅在用户选择“other:”无线电字段时显示。

但是,我不完全确定#2是否有效。您可以从文本字段中的单选按钮AND rboption=other获取rboption=some%20text。一个人通常会覆盖另一个,但是不确定哪个(读取:取决于页面中的位置,浏览器和月相)。
可以肯定的是,使文本域名称不同,只在rboption == 'other'时处理它(如Salty所说)