基于下面的这个 DOM 树,当单击评论回复按钮时,我需要使用 $(this)
,然后导航到下一个评论文本区域 .task-modal-cmt-reply -文本区域
我正在使用 jQuery 并尝试使用 .parent().parent().closest('.task-modal-cmt-reply-textarea')
和其他一些组合,但没有运气,所以远。
有人可以告诉我一种有效的方法来将此元素放入 var 中吗?
<小时/>我想要实现的目标...
我什至点击了评论回复按钮,当使用以下方式单击回复按钮时,该按钮会将回复表单插入到父评论下方的 DOM 中:
$document.on('click', '.cmt-reply-btn', function(e) {}
在此点击事件中,回复表单将被放入 DOM 中...
$parentCmtDomNode.after(cmtReplyFormTemplateHtml);
在表单位于 DOM 中之后,我尝试使用...附加一个 jQuery 插件以实现 @mention 样式功能。
$('.task-modal-cmt-reply-textarea').mentionsInput({});
问题
@mention 库适用于第一次点击的评论表单,但所有其他回复表单均不起作用
最佳答案
获取该元素引用的另一种方法是这样做:
var el = $(this).parent().parent().next().find('.task-modal-cmt-reply-textarea').eq(0);
请注意,eq(0) 仅返回一个对象,而不是一个包含一个元素的数组,这可能是必要的,也可能不是必要的,具体取决于您想用它做什么。
关于javascript - 使用 jQuery 查找相关元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33325796/