Ajax加载表单不通过ajax发布数据

时间:2013-03-04 19:24:04

标签: php ajax html5 codeigniter jquery

嗨我正在使用codeigniter并构建了ajax无限滚动。并且在ajax卷轴上有评论表格,我担心的是当页面加载时,将加载10个帖子,如果向下滚动,另外10个帖子将被加载,现在所有20个帖子将包含他们自己的评论表单。即时通讯使用ajax发表评论。因此,当页面加载的评论表单正在工作时加载的前10个帖子但是对于ajax加载的帖子评论表单ajax帖子不起作用。下面是使用的代码。

<script type="text/javascript">
$('.post_comment').click(function() {
  var form_data = {
    csrfsecurity: $(this).parent().find("input[name=csrfsecurity]").val(),
    post_text: $(this).parent().find('.comment_text').val()    
  };

  $.ajax({
    url: "<?php echo site_url('/comment'); ?>",
    type: 'POST',
    data: form_data,
    success: function(response){
      $(".home_user_feeds").html("markUpCreatedUsingResponseFromServer");
    }
  });
  return false;
});
</script>

下面的表单在向下滚动页面时会加载10次

<form action="http://localhost/comment" method="post" accept-charset="utf-8">
<input type="text" name="comment_text" value="" id="comment_text" size="35" class="comment_text">
<input type="submit" id="post_comment" name="post_comment" value="submit comment" class="post_comment" >
</form>

1 个答案:

答案 0 :(得分:0)

我的猜测是你没有将事件监听器添加到你正在进行AJAX的HTML中。你的前十个工作是因为你在文档加载时为原始10添加了事件监听器。

您需要运行jquery代码,将事件处理程序添加到DOM元素(类似于post_comment类的元素)再次点击事件。