Javascript Jquery无法处理AJAX响应

Javascript Jquery无法处理AJAX响应,javascript,php,jquery,html,ajax,Javascript,Php,Jquery,Html,Ajax,我的工作代码中有三个部分: 一个PHP文件 一个jQuery代码段,其中包含一个AJAX函数 另一个PHP文件 响应是一个HTML部分,应该在第一个PHP文件中的一个DIV前面加上它(在这里,使用PHP文件部分中标记中的jQuery部分请求AJAX) 我的查询是,当AJAX在所需的DIV元素中成功地对HTML进行动态预处理时,id=“content”,其他以响应HTML元素标记为目标的单击事件不会动态工作。 原因可能是什么 $(".update_button").click(function (

我的工作代码中有三个部分:

  • 一个PHP文件
  • 一个jQuery代码段,其中包含一个AJAX函数
  • 另一个PHP文件
  • 响应是一个HTML部分,应该在第一个PHP文件中的一个DIV前面加上它(在这里,使用PHP文件
    部分中
    标记中的jQuery部分请求AJAX)

    我的查询是,当AJAX在所需的DIV元素中成功地对HTML进行动态预处理时,
    id=“content”
    ,其他以响应HTML元素标记为目标的单击事件不会动态工作。
    原因可能是什么

    $(".update_button").click(function (){
        var updateval = $("#update").val();
        var cate = $("#selectcategory").val();
        var up = $("#uploadvalues").val();
        if (up)
        {
            var uploadvalues = $("#uploadvalues").val();
        }
        else
        {
            var uploadvalues = $(".preview:last").attr('id');
        }
        var X = $('.preview').attr('id');
        if (X)
        {
            var Z = X + ',' + uploadvalues;
        }
        else
        {
            var Z = 0;
        }
        var dataString = 'update=' + updateval + '&Category=' + cate + '&uploads=' + Z;
        if ($.trim(updateval).length == 0 || $("#selectcategory").val() === "")
        {
            if ($.trim(updateval).length == 0)
            {
                alert('Please Enter SOME TEXT!');
            }
            else if ($("#selectcategory").val() === "")
            {
                alert('Choose a Category from the list!');
            }
        }
        else
        {
            $.ajax({
                type: "POST",
                url: $.base_url + "message_ajax.php",
                data: dataString,
                cache: false,
                success: function (html)
                {
                    $("#flash").fadeOut('slow');
                    $(".teacherpost").prepend(html);
                    $("#update").val('').focus();
                    $("#selectcategory").val('');
                    $('#preview').html('');
                    $('#uploadvalues').val('');
                    $('#photoimg').val('');
                    $(".decoration").hide();
                }
            });
        }
        return false;
    });
    
    从AJAX响应中预先添加的HTML:

    <div class="post-description">
        <div class="stats">
            <div class="st_like_share">
                <a class="Like" href="javascript:void(0)" id='like<?php echo $msg_id;?>' title='<?php echo $like_status;?>' rel='<?php echo $like_status;?>' data='<?php echo $shareKey; ?>'><i class="glyphicon glyphicon-star" style="color:#F16522;"></i><?php  echo  $like_count; ?></a>
                <?php  } else {    ?>  
                <a class="Like" href="javascript:void(0)" id='like<?php echo $msg_id;?>' title='<?php echo $like_status;?>' rel='<?php echo $like_status;?>' data='<?php echo $shareKey; ?>'><i class="glyphicon glyphicon-star" ></i><?php echo  $like_count;  ?></a>              
                <?php } ?>                                         
                <a href="javascript:void(0)" class="stat-item remark" data-id="<?php 
                    echo $msg_id;?>"  title='Give your Remarks on it'>
                <i class="fa fa-comments-o icon"></i><?php echo  $remark_count;  ?>
                </a>                          
                <a href="javascript:void(0)" class="stdelete stat-item" data-id="<?php echo $omsg_id;?>"  rel="" title="Delete Post">
                </a>
                <?php }  
                    ?>
            </div>
        </div>
    </div>
    <div class="post-footer" id="post-footer-<?php echo $msg_id;?>">
        <textarea name="comment" class="form-control add-comment-input" id="ctextarea<?php echo $omsg_id;?>" style="width:100%;" placeholder="Add a remark here..."></textarea>
        <span class="input-group-btn">
            <input type="submit"  value="Remark" name="Remark"  id="<?php echo $omsg_id;?>" rel="<?php echo $msg_id;?>" class="btn btn-info pull-right Remark_button">
            <!--<input  type="submit" id=""  value="Send" class="btn btn-default go-chat pull-right ">-->
        </span>
        <?php if($remark_count>0)   { ?>
        <ul class="comments-list" id="commentload<?php echo $msg_id;?>">
            <?php include('comments_load.php'); ?>
        </ul>
        <?php } ?>
    </div>
    </div>
    
    动态地说,这不起作用,但是当我刷新页面时,这个jQuery工作得很好。

    像这样试试

    $(document).on('click', '.stat-item.remark', function(){ 
             var post_footer_id = "#post-footer-"+$(this).data('id');
          $(post_footer_id).slideToggle();
      }); 
    

    首先,请清理代码,使其结构正确。阅读代码时会出现混乱。请格式化代码,使其可读,并且只在问题所在的地方发布代码。是的,我正在格式化代码,而此代码可能会回答问题,提供有关如何和/或为什么解决问题的其他上下文,以改进answer的长期价值。
    $(document).on('click', '.stat-item.remark', function(){ 
             var post_footer_id = "#post-footer-"+$(this).data('id');
          $(post_footer_id).slideToggle();
      }); 
    
    $.ajax({
        type: "POST",
        url: $.base_url + "message_ajax.php",
        data: dataString,
        cache: false
    })
    .done((data) => {
        //on success code here
    })
    .fail((jqXhr) => {
        //on failure code here
        //jqXhr.responseJSON
    });