Javascript 禁用parentNode-jquery的所有输入标记
我需要禁用当前对象父节点的所有输入标记 情况如下图所示 有选择的问题Javascript 禁用parentNode-jquery的所有输入标记,javascript,jquery,dom,dhtml,Javascript,Jquery,Dom,Dhtml,我需要禁用当前对象父节点的所有输入标记 情况如下图所示 有选择的问题 <div class="question_title"> question 1 <div class="answers"> <div class="optionsa"> [radiobutton] opt1 </div> <div class="optionsa"> [radio
<div class="question_title">
question 1
<div class="answers">
<div class="optionsa">
[radiobutton] opt1
</div>
<div class="optionsa">
[radiobutton] opt2
</div>
<div class="optionsa">
[radiobutton] opt3
</div>
</div>
</div>
<div class="question_title">
question 2
<div class="answers">
<div class="optionsa">
[radiobutton] opt1
</div>
<div class="optionsa">
[radiobutton] opt2
</div>
<div class="optionsa">
[radiobutton] opt3
</div>
</div>
</div>
问题1
[无线电按钮]opt1
[无线电按钮]opt2
[无线电按钮]opt3
问题2
[无线电按钮]opt1
[无线电按钮]opt2
[无线电按钮]opt3
现在,每当我选择一个问题的一个选项时,它应该禁用所有其他选项
我做了以下几件事
<script language="javascript">
$(document).ready(function(){
$(".optionsa").click(function(){
$(this).parent().parent().children().attr('disabled',true);
});
});
</script>
$(文档).ready(函数(){
$(“.optionsa”)。单击(函数(){
$(this.parent().parent().children().attr('disabled',true);
});
});
但它不起作用,我在这里遗漏了什么?在这个上下文中,尝试使用.closest()
和.find()
$(".optionsa").click(function(){
$(this).closest('.question_title').find(':radio').prop('disabled',true);
});
可能会有多个div名为'question title'@timus2001,这有什么关系?您只需要包含您单击的选项的选项,这就是
.closest()
所做的。。让我来说明一下,重要的部分是使用.find()
而不是.children()
,因为要禁用的单选按钮不是.parent().parent()
的直接子按钮。