首页  >  文章  >  web前端  >  如何使用 jQuery 高效地将 JSON 数组转换为 HTML 表?

如何使用 jQuery 高效地将 JSON 数组转换为 HTML 表?

Patricia Arquette
Patricia Arquette原创
2024-10-30 05:15:03852浏览

 How Can I Efficiently Convert JSON Arrays to HTML Tables Using jQuery?

使用 jQuery 将 JSON 数组轻松转换为 HTML 表

当面临将 JSON 对象数组转换为 HTML 表的任务时,过程的复杂性可能令人望而生畏。幸运的是,jQuery 大大简化了这个过程。

利用 jQuery 自动创建表

提供的 jQuery 代码通过迭代数组中的每个 JSON 对象并动态生成相应的表行来简化转换过程和单元格:

<code class="javascript">$.getJSON(url , function(data) {
    var tbl_body = "";
    var odd_even = false;
    $.each(data, function() {
        var tbl_row = "";
        $.each(this, function(k , v) {
            tbl_row += "<td>"+v+"</td>";
        });
        tbl_body += "<tr class=\""+( odd_even ? "odd" : "even")+"\">"+tbl_row+"</tr>";
        odd_even = !odd_even;               
    });
    $("#target_table_id tbody").html(tbl_body);
});</code>

排除特定字段(可选)

要从表中排除特定字段,只需创建一个对象,以其名称作为键和 true/false 值来指示包含或排除:

<code class="javascript">var expected_keys = { key_1 : true, key_2 : true, key_3 : false, key_4 : true };</code>

然后,使用以下检查包装 tbl_row = 行:

<code class="javascript">if ( ( k in expected_keys ) && expected_keys[k] ) {
...
}</code>

免注入替代方案

对于更孤立的方法,请考虑此基于 DOM 的解决方案:

<code class="javascript">$.getJSON(url , function(data) {
    var tbl_body = document.createElement("tbody");
    var odd_even = false;
    $.each(data, function() {
        var tbl_row = tbl_body.insertRow();
        tbl_row.className = odd_even ? "odd" : "even";
        $.each(this, function(k , v) {
            var cell = tbl_row.insertCell();
            cell.appendChild(document.createTextNode(v.toString()));
        });        
        odd_even = !odd_even;               
    });
    $("#target_table_id").append(tbl_body);   //DOM table doesn't have .appendChild
});</code>

以上是如何使用 jQuery 高效地将 JSON 数组转换为 HTML 表?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn