如何为Div内的无线电链接jQuery removeAttr
我有一个复选框,用于显示/隐藏包含单选按钮网格的div。在我的页面底部有一个jQuery:如何为Div内的无线电链接jQuery removeAttr,jquery,Jquery,我有一个复选框,用于显示/隐藏包含单选按钮网格的div。在我的页面底部有一个jQuery: $(document).ready(function(){ $('#cb1_1').click(function(){ $('div#QxGrid').slideToggle('slow'); }); }); 这很有效。当单选按钮被隐藏时,尽管我希望页面自动取消选中选中的任何收音机,但我尝试链接一个removeAttr('checked'): $('#cb1_1').click(function(
$(document).ready(function(){
$('#cb1_1').click(function(){ $('div#QxGrid').slideToggle('slow');
});
});
这很有效。当单选按钮被隐藏时,尽管我希望页面自动取消选中选中的任何收音机,但我尝试链接一个removeAttr('checked'):
$('#cb1_1').click(function(){ $('div#Qx1').removeAttr('checked').slideToggle('slow'); });
这不管用。。。这是因为jQuery需要id为Qx1的无线电吗?(Qx1 div中没有一堆收音机?)HTML摘录(缩写)看起来像
<div id="Qx1">
<p class="ans">
<input type="radio" name="q1" id="q11" value="1"> etc.
<input type="radio" name="q1" id="q12" value="2"> etc.
<input type="radio" name="q1" id="q13" value="3"> etc.
</p>
</div>
等
等
等
正确。按照您的方式,它希望从div中删除属性“checked”。只需在click()中添加另一行即可取消选中任何选中的内容:
$(document).ready(function(){
$('#cb1_1').click(function(){
$('p.ans').children('input').removeAttr('checked');
$('div#Qx1').slideToggle('slow');
});
});
对。按照您的方式,它希望从div中删除属性“checked”。只需在click()中添加另一行即可取消选中任何选中的内容:
$(document).ready(function(){
$('#cb1_1').click(function(){
$('p.ans').children('input').removeAttr('checked');
$('div#Qx1').slideToggle('slow');
});
});
div没有选中属性
,
,因为它不应该被选中,这就是为什么它不工作的原因。下面应该可以工作,注意链式方法的顺序非常重要,因为您希望在遍历其子无线电输入之前对div执行所需的所有操作:
$('#q1voc_1').click(function()
{
$('div#Qx1').slideToggle('slow').children('input[type=radio]').each(function()
{
$(this).removeAttr('checked');
});
});
我必须尝试一下,但您也可以将$('div#Qx1')…
部分简化为:
$('div#Qx1').slideToggle('slow').children('input[type=radio]').removeAttr('checked');
div没有选中属性
,
,因为它不应该被选中,这就是为什么它不工作的原因。下面应该可以工作,注意链式方法的顺序非常重要,因为您希望在遍历其子无线电输入之前对div执行所需的所有操作:
$('#q1voc_1').click(function()
{
$('div#Qx1').slideToggle('slow').children('input[type=radio]').each(function()
{
$(this).removeAttr('checked');
});
});
我必须尝试一下,但您也可以将$('div#Qx1')…
部分简化为:
$('div#Qx1').slideToggle('slow').children('input[type=radio]').removeAttr('checked');
编辑:
没错,内噬菌体:
$('div#Qx1').slideToggle('slow').find('input[type=radio]').removeAttr('checked');
这样你就不需要结尾了
编辑:
没错,内噬菌体:
$('div#Qx1').slideToggle('slow').find('input[type=radio]').removeAttr('checked');
这样,您就不需要end()只需重新排序链接,而不是使用
end()
就可以更干净。只需重新排序链接,而不是使用end()
$('p.ans')。子项('input')
将与$('p.ans input')
$('p.ans相同.children('input')
将与$('p.ans input')