Php Jquery获取单击元素的id并显示隐藏的子div
我有一系列的评论,应该可以回答这些评论Php Jquery获取单击元素的id并显示隐藏的子div,php,jquery,Php,Jquery,我有一系列的评论,应该可以回答这些评论 <div> <a href="#" class="answerBtn" id="<?=$comment->id ?>">Answer</a> <div id="answerDiv" style="display:none;"> <form action="" method="POST"> <input type="hidden
<div>
<a href="#" class="answerBtn" id="<?=$comment->id ?>">Answer</a>
<div id="answerDiv" style="display:none;">
<form action="" method="POST">
<input type="hidden" value="<?=$comment->id ?>"/>
<p>
<label>Your name*</label>
<br />
<input type="text" name="answer_username" id="answer_username" required />
</p>
<p>
<label>Your Email (optional)</label>
<br />
<input type="text" name="answer_email" />
</p>
<p>
<label>Your comment*</label>
<br />
<textarea name="answer_message" required></textarea>
</p>
<input type="hidden" value="<?=base_url()?>" id="answer_baseurl"/>
<input type="submit" value="Send"/>
</form>
</div>
但那真的不管用
有人能帮我吗?下面这行只关心标签
id
:
$('id + div').slideToggle();
它根本不使用变量id
相反,请使用以下命令:
$('#' + id + ' + div').slideToggle();
由于要显示的
div
似乎是下一个同级,请使用.next()
查找元素
$('.answerBtn').click(function(){
$(this).next().slideToggle();
});
我认为更好的方法是将相同的id分配给持有表格的div
<a href="#" class="answerBtn" id="<?=$comment->id ?>">Answer</a>
<div id="answerDiv_<?=$comment->id ?>" style="display:none;"> ... </div>
将注释的id附加到div,如下所示:
<div id="answerDiv<?=$comment->id ?>" style="display:none;">
$('.answerBtn').click(function(){
var id = $(this).attr('id');
$('div#answerDiv_'+id).slideToggle();
});
<div id="answerDiv<?=$comment->id ?>" style="display:none;">
$('.answerBtn').click(function(){
var id = $(this).attr('id');
$('#answerDiv'+id).slideToggle();
});