我让我的jQuery工作得更早,但最近我不得不在我的HTML中添加几个div。我想点击按钮discussionContainer
来打开和关闭replyButton
。任何帮助都会很棒。
我将尽快点击replyButton
,因为我将通过并发送一个http请求以获取我的数据库中的内容,我可以在Angularjs中执行此操作吗?也许除了jQuery和Angularjs之外还有其他一些想法/建议?在页面加载时,discussionContainer
将被关闭。
$(document).on("click", ".replyButton", function() {
$(this).parent('.forQuestions').find(".discussionContainer").slideToggle(300);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<li class="question">
<div class="forQuestion">
<div class="cardBody">
{{answer.aContent}}
</div>
<div class="cardFooter">
<div class="col-xs-4 footer1">
<button class="replyButton">Reply</button>
</div>
<div class="col-xs-4 footer2">
<i class="fa fa-trash" aria-hidden="true" ng-click="controller.deleteAnswer(answer._id)"></i>
<i class="fa fa-pencil" aria-hidden="true" ng-click="controller.showEditAnswerModal(answer)"></i>
</div>
<div class="col-xs-4 footer3">
{{answer.aDate | date: 'medium'}}
</div>
</div>
<div class="discussionContainer">
<ul>
<li>comment1</li>
<li>comment2</li>
</ul>
<div class="newComment">
<textarea rows="2" cols="30" placeholder="New comment"></textarea>
<button type="button" name="button">Comment</button>
</div>
</div>
</div>
</li>
答案 0 :(得分:1)
您的代码存在问题:
1 - .parent()
仅在DOM树中向上移动
2 - 您没有关于班级forQuestions
的元素,您的正确班级为forQuestion
,但最后没有s
..所以您需要使用{ {1}}
演示
.closest('.forQuestion')
&#13;
$(document).on("click", ".replyButton", function() {
$(this).closest('.forQuestion').find(".discussionContainer").slideToggle(300);
});
&#13;