我正在创建一个带有一些单选按钮选项的 HTML 表单。我希望有一个选项为“其他 - 请指定”并允许用户输入内容。
两个问题:
1)如何制作“混合”输入类型radio/text
?
2) 在 PHP 后端,如果输入name
与单选输入具有相同的属性,那么用户的输入是否会属于同一个数组?
我正在创建一个带有一些单选按钮选项的 HTML 表单。我希望有一个选项为“其他 - 请指定”并允许用户输入内容。
两个问题:
1)如何制作“混合”输入类型radio/text
?
2) 在 PHP 后端,如果输入name
与单选输入具有相同的属性,那么用户的输入是否会属于同一个数组?
为什么不向输入添加不同的名称属性,并且仅在选择了其他单选按钮时才验证它?
我是这样做的:
<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']);
}
等等
#1:在“其他:”单选字段中,添加一个<input type="text" ...>
带有样式的 display:none,并且仅在用户选择“其他:”单选字段时显示。
但是,我不完全确定#2 是否可行。您rboption=other
将从单选按钮和rboption=some%20text
文本字段中获得。一个通常会覆盖另一个,但不确定是哪个(阅读:取决于页面中的位置、浏览器和月相)。
可以肯定的是,使文本字段名称不同,并且仅在rboption == 'other'
(如 Salty 所说)时处理它