我正在创建一个带有一些单选按钮选项的HTML表单。我想有一个选项为“其他 - 请指定”并允许用户输入内容。
两个问题:
1)如何制作radio/text
的“混合”输入类型?
2)在PHP后端,如果输入与无线电输入具有相同的name
属性,用户的输入是否会成为同一阵列的一部分?
答案 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所说)