隐藏()单选按钮*和jQuery的*它的文本标签
-
22-07-2019 - |
题
我要回在最近的一个项目整理出可访问性问题,并确保所有的表单元素有标签。把标签文本标签引起一个问题,我之前写了一些缺憾代码。
基本上,如果你有一个单选按钮,它的标签:
<label for="zone_r1"><input type="radio" name="zone" id="zone_r1" value="NY" />New York</label>
和你使用jQuery来隐藏它,像这样:
$('#zone_r1').hide();
在实际的按钮被隐藏而不是标签文本。本来我做了一个跨度标签文本和隐藏了,像这样:
<input id="NY" type="radio" name="zone" value="NY" /><span id="nyTXT">New York</span>
和
$('#NY').hide();
$('#nyTXT').hide();
任何想法?我宁愿不使用组装机,它可能不会在标签跨度验证,但也许我过于热心。
解决方案
$('#zone_r1').parent().hide();
适用于我
其他提示
我觉得这应该为你工作。
$("label[for=zone_r1],#zone_r1").hide();
此选择具有“为”属性设置为单选按钮你寻找,以及单选按钮本身的标签,并隐藏他们两个
约$('label:has(#zone_r1)').hide();
什么
您可以这样做:
1)定义的单选按钮输入没有环绕型标签。
2。)在一个<span>
包裹“选项文本”(文本到无线电按钮的右侧)。
3)使用此jQuery的语句:$("input:radio:not(:checked), input:radio:not(:checked) + span").hide();
此将选择的单选按钮和文本到无线电按钮的右边和隐藏。
基于值隐藏单选按钮容器或TD
的jQuery( “输入[类型=无线电] [值= 'EU2']”)的父()隐藏();
不隶属于 StackOverflow