div刷新后javascript函数停止工作

时间:2017-10-31 13:20:29

标签: javascript jquery ajax

$(function() {
  $(".reqdeb").click(function() {
    console.log("Working");
    var req_id = $(this).attr("id");
    var info = 'id=' + req_id;
    if (confirm("Are you sure you want to delete this request?")) {
      $.ajax({
        cache : false,
        type : "POST",
        url : "del_req.php",
        data : info,
        success : function() {
        }
      });
      $(this).parents("tr").animate("fast").animate({
        opacity : "hide"
      }, "slow");
    }
    return false;
  });
});

这是在按下按钮几次后停止工作的代码,导致它停止工作的代码是:

function autoRefresh_div(){
    $("#refresh").load("reqs.php");
    $("#nrref").load("numreq.php")
}
setInterval('autoRefresh_div()', 5000);

1 个答案:

答案 0 :(得分:2)

似乎您正在替换现有元素,因此也会删除事件处理程序。您可以.on()方法使用Event Delegation方法。

一般语法

$(document).on('event','selector',callback_function)

实施例

$(document).on('click', ".reqdeb", function(){
    //Rest of your code
});

代替document,您应该使用最接近的静态容器以获得更好的性能。