Javascript 如何在JQuery中单击最近的元素(复选框)时禁用下一个元素(textarea)?
单击复选框,我希望禁用下一个最近的文本区域 以下是代码片段:Javascript 如何在JQuery中单击最近的元素(复选框)时禁用下一个元素(textarea)?,javascript,jquery,html,Javascript,Jquery,Html,单击复选框,我希望禁用下一个最近的文本区域 以下是代码片段: <div class="pure-u-1 pure-u-md-1-5"> <input type="checkbox" value="true" class="fRegistrer" name="fRegistrer" id="fRegistrer"> </div> <div class="pure-u-1 pure-u-md-1-5"> <textarea cols="
<div class="pure-u-1 pure-u-md-1-5">
<input type="checkbox" value="true" class="fRegistrer" name="fRegistrer" id="fRegistrer">
</div>
<div class="pure-u-1 pure-u-md-1-5">
<textarea cols="200" rows="5" class="normal" name="kommenter" id="kommenter"></textarea>
</div>
点击复选框,您可以使用
closest()
获取父级div
,next()
查找下一个同级div
,然后使用find()
获取包含的textarea
。试试这个:
$(':checkbox')。更改(函数(){
$(this).closest('div')。next('div')。find('textarea')。prop('disabled',!this.checked);
});代码>
富吧
您的html代码中的复选框在哪里?对不起。刚刚纠正了汉克斯。让我检查一下它是否完全符合我的场景:p
onclick="$(this).closest('.textnormal').find('textarea').attr('disabled',true)"
$('#fRegistrer').click(function () {
debugger
$(this).parent('.pure-u-1').next().find('#kommenter').attr('disabled',true);
});