javascript - 如何替换ajax数据中<td>的内容?

标签 javascript php jquery ajax

我试图更改文本 INdata[i].online 中的绿点和文字 OUTdata[i].offline 中的红点.

这就是我现在拥有的。

enter image description here

这就是我想要的结果。

enter image description here

我已经试过了.text() , .html() .但这些都不起作用。

$.ajax({
        type: 'ajax',
        url: url,
        dataType: 'json',
        success: function(data){
        //console.log(data);
        var html = '';
        var i;
        for(i=0; i<data.length; i++){
        html += '<tr>' +
        '<td>'+data[i].name+'</td>'+
        '<td>'+data[i].description+'</td>'+
        '<td>'+data[i].comment+'</td>'+
       '</tr>';
        }
       $('#show').html(html);
      },
      error: function(){
            alert('Fail to load data');
       }
    });

最佳答案

如下更改 html 行生成代码:

for(i=0; i<data.length; i++){
    var row = $('<tr></tr>');
    $('<td></td>').appendTo($(row)).html(data[i].name);
    $('<td></td>').appendTo($(row)).html(getDot(data[i].online));
    $('<td></td>').appendTo($(row)).html(getDot(data[i].offline));
    $('<td></td>').appendTo($(row)).html(data[i].comment);
    $('#show').append($(row));
}

生成DOT的函数:

 function getDot(data){
    var div = '';
    if(data) {
      div = $('<div class="dot"></div>');
      if(data === 'IN') {
          $(div).addClass('green-dot');
      } else if(data === 'OUT') {
          $(div).addClass('red-dot');
      }
    }
    return div;
}

CSS:

div.dot {
    width : 20px;
    height : 20px;
    border-radius : 50%;
}

div.green-dot{
    background-color : green;
}

div.red-dot{
    background-color : red;
}

查看此 fiddle 中的演示.

关于javascript - 如何替换ajax数据中<td>的内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55329045/

相关文章:

javascript - 使用数组创建 HTML 表格

php - 将图像从 mysql blob 数据库添加到 ZipArchive

php - 将每个项目的折扣总额添加为 WooCommerce 订单项目元数据

javascript - 使用 ng-model 选择下拉列表中的两个对象

javascript - 关闭 PhotoEditorSDK ReactUI 的正确方法是什么?

javascript - jQuery $.data() 方法与直接将变量附加到 DOM 元素有何不同?

php - 需要验证 mysql 和 PHP 中空结果的编码语法

serialization - $(this).serialize() -- 如何添加一个值?

jquery - 删除具有重复数据属性的项目

javascript - 使用 jQuery 加载 POST 表单