想知道我是否可以嵌套输入类型

时间:2017-09-15 17:58:00

标签: html forms nested

我为我的公司制作了一个网站,我想让他们选择他们的设备有什么问题。如果他们的问题不在列表中,我希望他们将其输入<textarea>。我想知道我是否可以将该文本区域作为我的单选按钮选项之一。到目前为止,我有这个......

&#13;
&#13;
<fieldset>
  <legend> What's wrong with your device </legend>

  <label> <input type = "radio" name = "problem">
    					Cracked Screen </label>

  <label> <input type = "radio" name = "problem">
    					Broken Camera </label>

  <label> <input type = "radio" name = "problem">				
    			<textarea rows = "4" cols = "15" name = "problem" 
                         placeholder = "other problems"></textarea>              
                         </label>


</fieldset>
&#13;
&#13;
&#13;

这似乎可行,但我担心它只会将文本区域渲染为同一标签下的自己的输入。有什么建议吗?

此外,我想知道如何使我的单选按钮能够被取消。您只能激活它们,但不能停用它们。这只能用JavaScript完成吗?

3 个答案:

答案 0 :(得分:2)

HTML input是一个“空”元素 - 它没有结束标记,也不能包含任何子标记。

你可以肯定使看起来像你的textarea一样是单选按钮控件的一部分,就像你做的那样,但如果没有一些Javascript它就不会有这样的行为。

第二个问题:用户通常无法取消选中单选按钮。您可以以编程方式(例如,通过按钮单击)执行此操作,或者使用另一个“无”选项供他们单击。

答案 1 :(得分:0)

您无法嵌套输入。可能最好的办法是在选择其他选项时添加显示输入文本字段的JavaScript。

答案 2 :(得分:0)

无法嵌套元素

按照这个来达到你想要的效果。

最初隐藏textarea元素。 根据您选择的单选按钮切换textarea可见性。

<fieldset> 
    <legend> What's wrong with your device </legend> 
    <label> <input type = "radio" name = "problem"/>Cracked Screen </label>
     <label> <input type = "radio" name = "problem"/>Broken Camera </label>
     <label> <input type = "radio" name = "problem" class="t_txt"/>  </label>   
    <textarea class="p_txt" style="display:none" rows = "4" cols = "15" name = "problem" placeholder = "other problems"></textarea>

</fieldset>

<强> Jquery的

$("input:radio.t_txt").click(function(){
$("textarea.p_txt").toggle();
});