Javascript函数没有';在通过ajax动态添加内容后无法工作
我有一个函数Javascript函数没有';在通过ajax动态添加内容后无法工作,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有一个函数 function reply(id) { $('#reply_'+id).toggle(); return false; } 和Ajax函数 <script type="text/javascript"> function post() { var comment = document.getElementById("comment").value; var course_id = document.getElement
function reply(id) {
$('#reply_'+id).toggle();
return false;
}
和Ajax函数
<script type="text/javascript">
function post()
{
var comment = document.getElementById("comment").value;
var course_id = document.getElementById("course_id").value;
var user_id = document.getElementById("user_id").value;
if(comment)
{
$.ajax
({
type: 'post',
url: 'comments.php',
data:
{
comment:comment,
course_id:course_id,
user_id:user_id
},
success: function (response)
{
document.getElementById("comment-list").innerHTML=response+document.getElementById("comment-list").innerHTML;
document.getElementById("comment").value="";
}
});
}
return false;
}
</script>
职能职位()
{
var comment=document.getElementById(“comment”).value;
var course\u id=document.getElementById(“course\u id”).value;
var user_id=document.getElementById(“user_id”).value;
如果(评论)
{
$.ajax
({
键入:“post”,
url:'comments.php',
数据:
{
评论:评论,,
课程号:课程号,
用户id:用户id
},
成功:功能(响应)
{
document.getElementById(“注释列表”).innerHTML=response+document.getElementById(“注释列表”).innerHTML;
document.getElementById(“注释”).value=“”;
}
});
}
返回false;
}
以及在ajax调用之后添加的内容
...
...
<p class="text-right"><a href="#" onclick="return reply(<?php echo $i; ?>);" class="btn btn-default btn-sm"><i class="fa fa-reply"></i> reply</a></p>
...
...
<div class="row" id="reply_<?php echo $i; ?>" style="display: none;">
...
...
。。。
...
...
...
更改ajax调用后添加的内容,如下所示:
<p class="text-right">
<a href="#" data-id="<?php echo $i; ?>" class="btn btn-default btn-sm btnReply">
<i class="fa fa-reply"></i> reply</a></p>
检查ID,这些ID对于每个元素都应该是唯一的。它们是。正如我所说。它在页面刷新时工作,但在通过ajaxOk切换添加时不工作,但问题是现在当我单击按钮时,它会转到页面顶部,我必须向下滚动才能看到。早些时候,页面停留在原来的位置。$(“body”)。在(“click”、“.btnReply”上,函数(事件){var id=$(this.attr('data-id');reply(id);});函数reply(id){$('#reply_'+id).toggle();return false;}
让我们来看看。
$("body").on("click", ".btnReply", function(event){
var id =$(this).attr('data-id');
reply(id);
});