1

在此处复制https://jsfiddle.net/a1fogpbm/ 我正在工作中生成数据,并尝试在每次更改时间时更新表格。一旦我添加了 datetimepicker,当我更改日期时,我就会得到重复,但是当我点击退出时,ajax 调用会第三次刷新并删除重复项。

$('.btn').click(function() {
$(".data").remove();
$('.text').text('loading . . .');
$.ajax({

type:"GET",
url:"https://api.meetup.com/2/cities",
success: function(data) {

  //$('.text').text(JSON.stringify(result));

for (var i = 0; i < data.results.length; i++) {
  var this_city = data.results[i];

  $(".tbody").append(
    $("<tr/>",{"class": "data" } ).append(
      $("<td>").append(
        $("<div/>", {"class": "column-txt input duration", text: this_city.id})
      )
    ).append(
      $("<td>", {"class": "column-txt input status", text: this_city.city})

      ).append(
        $("<td>", {"class": "column-txt input status", text: this_city.state})

        ).append(
          $("<td>", {"class": "column-txt input status", text: "Dec-"+(this_city.ranking) +" 11:23:8"})

          )   

  );

}
$(".sortTable").trigger("update");},
dataType: 'jsonp',
  });

});

$(function() {
  $("#myTable").tablesorter();
  $('#from').datetimepicker();
  $("#from").on("change", function() {
  $('.btn').click();     });
});

非常感谢,如果有人能弄清楚


请提供SHOW CREATE TABLE。同时,如果您有,则INDEX(timestamp)不需要and id.... 事实上,它可能会妨碍优化ORDER BY.

因此,如果您的查询是这样的:

select  *
    from  table
    where  timestamp >= "some_time"
    order by  timestamp
    limit  500

并且你有INDEX(timestamp),那么它已经得到了很好的优化,并且它不会变慢(除了缓存问题)。

如果这只是“真实”查询的简化版本,那么所有的赌注都没有了。

4

1 回答 1

1

移动 $(".data").remove(); 进入 ajax 成功回调函数的行修复了该问题。

于 2019-12-26T05:52:19.457 回答