Javascript JS不';t完全显示在屏幕中,但完全显示在console.log中

Javascript JS不';t完全显示在屏幕中,但完全显示在console.log中,javascript,jquery,html,json,Javascript,Jquery,Html,Json,我编写了一个javascript代码,以基于JSON绘制一个表。 有点奇怪。我编写代码来绘制一个将显示在屏幕上的表,但它并没有完全显示出来。但是如果我在console.log中声明它,它就会完全显示出来。现在怎么了 这是表格和控制台的屏幕截图。log: *我觉得没什么问题 说明: 它是从json呈现的表,正如您所看到的,它只有3个,用户,produk A paket A,和produk B paket B 它是console.log版本,从表中可以看到它们有3个,但其中有 如果我在chrome中

我编写了一个javascript代码,以基于JSON绘制一个表。
有点奇怪。我编写代码来绘制一个将显示在屏幕上的表,但它并没有完全显示出来。但是如果我在
console.log
中声明它,它就会完全显示出来。现在怎么了

这是表格和控制台的屏幕截图。log: *我觉得没什么问题

说明:

  • 它是从json呈现的表,正如您所看到的,它只有3个
    用户
    produk A paket A
    ,和
    produk B paket B
  • 它是
    console.log
    版本,从表中可以看到它们有3个
    ,但其中有
    如果我在chrome中使用inspect from developer tools检查它,它就不在那里了(这是屏幕截图的链接:)。如果您看到我的代码,则有一个名为
    ,但在
    检查会话
    中,该位置没有
    trBot

    下面是我的javascript代码:

        $.when(
            $.ajax({
                type: "GET",
                url: 'http://www.mocky.io/v2/598960ad410000d300820df5',
                dataType: "JSON",
                timeout: 10000,
                success: function(result){
                    console.log("Ajax User berjalan, berikut adalah daftar Jumlah User dari Produk yang diterima : ");
                    $.each(result, function (index, el) {
                        console.log("jumlah user : " + el.jumlah_user + " , id jumlah user : " + el.id);
                    });
                },
                error: function(xhr, textStatus, thrownError) {
                    $('#prosesloaddata').hide();
                    $('#dialogerror').show();
                    $("#pesanerror1").html("Terjadi Masalah, Silahkan Periksa Kembali Koneksi Internet Anda.");
                    $("#pesanerror2").html(xhr.error);
                    $("#pesanerror3").html("");
                    console.log("error ketika memanggil data JSON Jumlah User dengan AJAX,", xhr.error);
                }
            }),
            $.ajax({
                type: "GET",
                url: 'http://www.mocky.io/v2/5989607c410000d300820df4',
                dataType: "JSON",
                timeout: 10000,
                success: function(result){
                    console.log("Ajax Paket berjalan, berikut adalah daftar nama Paket dari produk yang diterima : ");
                    $.each(result, function (index, el) {
                        console.log("nama paket : " + el.nama + " , id nama paket : " + el.id);
                    });
                },
                error: function(xhr, textStatus, thrownError) {
                    $('#prosesloaddata').hide();
                    $('#dialogerror').show();
                    $("#pesanerror1").html("Terjadi Masalah, Silahkan Periksa Kembali Koneksi Internet Anda.");
                    $("#pesanerror2").html(xhr.error);
                    $("#pesanerror3").html("");
                    console.log("error ketika memanggil data JSON Paket Produk dengan AJAX,", xhr.error);
                }
            }),
            $.ajax({
                type: "GET",
                url: 'http://www.mocky.io/v2/598960cf410000d800820df7',
                dataType: "JSON",
                timeout: 10000,
                success: function(result){
                    console.log("Ajax Harga berjalan, berikut adalah daftar harga dari produk yang diterima : ");
                    $('#prosesloaddata').hide();
                    $.each(result, function (index, el) {
                        $.each(el, function (index1, el1) {
                            console.log("harga paket : " + el1.harga + " , id harga paket : " + el1.id + " , tanggal efektif : " + el1.tanggal_efektif);
                        })
                    });
                },
                error: function (xhr, textStatus, thrownError) {
                    $('#prosesloaddata').hide();
                    $('#dialogerror').show();
                    $("#pesanerror1").html("Terjadi Masalah, Silahkan Periksa Kembali Koneksi Internet Anda.");
                    $("#pesanerror2").html(xhr.error);
                    $("#pesanerror3").html("");
                    console.log("error ketika memanggil data JSON Harga dengan AJAX,", xhr.error);
                }
            })
        ).then(function(a, b, c){
             class arranger {
                 constructor(a, b, c) {
                     this.a = a;
                     this.b = b;
                     this.c = c;
                     this.p = "";
                 }
                 qq() {
                     var packer = [],
                         y;
                     c = c[0];
                     for (var x = 0; x < c.length; x++) {
                         var wd = typeof packer[[c[x]['nama_id']]];
                         if (wd == "undefined") {
                             packer[c[x]['nama_id']] = [{
                                 "harga": c[x]['harga'],
                                 "jumlah_user_id": c[x]['jumlah_user_id']
                             }];
                         } else {
                             packer[c[x]['nama_id']].push({
                                 "harga": c[x]['harga'],
                                 "jumlah_user_id": c[x]['jumlah_user_id']
                             });
                         }
                     }
                     var p = "<tr>";
                     for (x in a[0]) {
                         p += "<th>" + a[0][x]['jumlah_user'] + " user</th>";
                     }
                     p += "</tr>";
                     for (x in b[0]) {
                         p += '<tr class="trTop"><td colspan="' + (a[0].length - 2) + '">' + b[0][x]['nama'] + '<td colspan="2">' + b[0][x]['masa_training'] + ' ' + b[0][x]['masa_maintenance'] + '</td></tr>';
                         if (typeof packer[b[0][x]['id']] !== "undefined") {
                             p += '<tr class="trBot">';
                             for (y in packer[b[0][x]['id']]) {
                                 p += '<td>' + packer[b[0][x]['id']][y]['harga'] + '</td>';
                             }
                             p += '</tr>';
                         }
                     }
                     return p;
                 }
                 iii($qwe) {
                     this.p = $qwe;
                 }
                 zzz() {
                     document.getElementById('wg').innerHTML = this.p;
                 }
             }
             (function () {
                var $ar = new arranger(a, b, c);
                $ar.iii($ar.qq());
                console.log($ar.qq());
                $ar.zzz()
             })();
        });
    
    编辑2:我手动尝试过(将html表格行从
    控制台.log
    手动复制粘贴到
    ,结果如下: ,这是html代码:

            <table id="wg">
                <tr>
                    <th>1 user</th>
                    <th>2 user</th>
                    <th>5 user</th>
                    <th>30 user</th>
                </tr>
                <tr class="trTop">
                    <td colspan="2">Produk A Paket A
                    <td colspan="2">1 x 1 Jam 1 Bulan</td>
                </tr>
                <tr class="trBot">
                    <td>1000</td>
                    <td>2000</td>
                    <td>3000</td>
                    <td>4000</td>
                </tr>
                <tr class="trTop">
                    <td colspan="2">Produk A Paket B
                    <td colspan="2">1 x 2 Jam 1 Bulan</td>
                </tr>
            </table>
    
    
    1用户
    2用户
    5用户
    30用户
    产品包装
    1 x 1果酱1布兰
    1000
    2000
    3000
    4000
    产品A包装B
    1 x 2果酱1布兰
    
    缺少两个td结束标记:

    • 在“Produk A Paket A”之后
    • 在“Produk A Paket B”之后
    在它们之后添加
    ,无论您在哪里创建html,问题都应该得到解决。

    好了,现在问题已经解决了

    谢谢大家

    我只想补充一点:

    this.p = p;
    
    在运行此代码之前:

    return p;
    

    sry@kloker我已经更改了它,之后添加,但它仍然不起作用,有其他想法吗?
    return p;