Javascript 如果ajax完成,则用请求的数据替换html

Javascript 如果ajax完成,则用请求的数据替换html,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我的问题是,我想替换工具提示内容中的内容,但它不替换它。 例如,如果我将正文内容替换为数据,它会工作,但不会替换工具提示内容 目前正在工具提示内容中加载sybmol。它只是HTML和CSS 我有一个javascript: $('td').hover(function () { if ($(this).find('div.tooltip').length != 0 ) { $.ajax({ method: "POST", ur

我的问题是,我想替换工具提示内容中的内容,但它不替换它。 例如,如果我将
正文
内容替换为
数据
,它会工作,但不会替换
工具提示内容

目前正在
工具提示内容中加载sybmol。它只是HTML和CSS

我有一个javascript:

$('td').hover(function () {
    if ($(this).find('div.tooltip').length != 0 ) {
        $.ajax({
            method: "POST",
            url: "dig.php",
            data: {
                host: $(this).find(' div.tooltip').attr('data-href'),
                server: $(this).find(' div.tooltip').attr('data-server')
            }
        })
        .done(function (data) {
            console.log('worked');
            $(this).find('div.tooltip-content').html(data);
        });
    }
});

这个
在ajax中的成功是指xhr对象。您需要将其作为上下文传递,或者将其设置为变量

$('td').hover(function() {
  var $this=$(this);
  if ($this.find('div.tooltip').length != 0) {
    $.ajax({
        method: "POST",
        url: "dig.php",
        data: {
          host: $(this).find(' div.tooltip').attr('data-href'),
          server: $(this).find(' div.tooltip').attr('data-server')
        }
      })
      .done(function(data) {
        console.log('worked');
        $this.find('div.tooltip-content').html(data);
      });
  }
});
如果您设置了上下文,那么可以在ajaxsuccess中使用
this

$('td').hover(function() {
  if ($(this).find('div.tooltip').length != 0) {
    $.ajax({
        method: "POST",
        url: "dig.php",
        context: this,
        data: {
          host: $(this).find(' div.tooltip').attr('data-href'),
          server: $(this).find(' div.tooltip').attr('data-server')
        }
      })
      .done(function(data) {
        console.log('worked');
        $(this).find('div.tooltip-content').html(data);
      });
  }
});

REF:

您应该解释OP在假设
始终相同时的错误。如果其结果已存储在变量中,为什么继续重复计算
$(此)