如何在JQuery中单击最近的元素(复选框)时禁用下一个元素(文本区域)
How to disable the next element(textarea) on click of nearest element(Checkbox) in JQuery?
单击复选框后,我希望禁用最近的文本区域。
以下是片段:
<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>
在Jquery中:
onclick="$(this).closest('.textnormal').find('textarea').attr('disabled',true)"
单击复选框时,可以使用closest()
获取父级div
,使用next()
查找下一个同级div
,然后使用find()
获取包含的textarea
。试试这个:
$(':checkbox').change(function() {
$(this).closest('div').next('div').find('textarea').prop('disabled', !this.checked);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<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" disabled="true">Foo bar</textarea>
</div>
$('#fRegistrer').click(function () {
debugger
$(this).parent('.pure-u-1').next().find('#kommenter').attr('disabled',true);
});
DEMO
相关文章:
- 滚动到容器中的下一个元素-几乎到了
- 使用CSS或js,使用动态选择器选择任意li的下一个元素
- 真正的下一个具有特定类的元素
- jQuery转盘下一个元素没有滑入
- 获取锚点的下一个元素
- j查询 如何选择当前元素之后的下一个元素
- 获取下一个或上一个隐藏元素的高度,以设置父元素的高度.jquery.
- 如何在 JavaScript 中获取下一个元素和更新
- jQuery网站的键盘快捷键,焦点使用左键和右键转到上一个或下一个元素
- 如果上一个元素为空,则隐藏下一个元素
- 使用表时,Jquery Next()未正确突出显示下一个元素
- 如何将所有下一个元素包装到
- 获取活动元素之后的下一个元素
- jQuery-在每个复选框中获取下一个元素
- 找不到下一个元素
- 正在从元素中获取下一个className
- 如何获取下一个元素's值-jquery
- 如何选择 $(this) 之后的下一个元素
- 专注于下一个元素
- Jquery 选择元素下一个/上一个/最近