如何基于对象数组展示aliasName?附jQuery实现示例代码
嘿,这事儿好办!既然你已经搭好表格结构还引入了jQuery,咱们直接用它的遍历方法就能快速实现展示aliasName的功能,我给你两种实用的写法:
实现方案
首先假设你的基础表格结构是这样的(如果你的表格ID或结构不同,调整选择器即可):
<table id="alias-table"> <thead> <tr> <th>表别名</th> </tr> </thead> <tbody></tbody> </table>
方法1:逐行插入(适合小数据量)
这种写法直观易懂,适合数组元素不多的场景:
// 你的目标对象数组 const test = [{tableName:"EMP", aliasName:"E1"}, {tableName:"EMP", aliasName:"E2"}, {tableName:"DEPT", aliasName:"D"}, {tableName:"EMP", aliasName:""}]; // 获取表格的tbody容器 const $tbody = $('#alias-table tbody'); // 先清空tbody(避免重复渲染内容,可选) $tbody.empty(); // 遍历数组生成每一行 $.each(test, function(index, item) { // 处理空别名的情况:如果aliasName为空,显示"N/A",想留空就直接用item.aliasName const showAlias = item.aliasName || 'N/A'; // 创建行并插入tbody $tbody.append(`<tr><td>${showAlias}</td></tr>`); });
方法2:批量渲染(适合大数据量)
如果数组里的元素很多,一次性拼接所有HTML再插入,比逐行append性能更好:
const test = [{tableName:"EMP", aliasName:"E1"}, {tableName:"EMP", aliasName:"E2"}, {tableName:"DEPT", aliasName:"D"}, {tableName:"EMP", aliasName:""}]; const $tbody = $('#alias-table tbody'); $tbody.empty(); // 先拼接所有行的HTML字符串 let rowsHtml = ''; $.each(test, function(index, item) { const showAlias = item.aliasName || 'N/A'; rowsHtml += `<tr><td>${showAlias}</td></tr>`; }); // 一次性插入到tbody中 $tbody.html(rowsHtml);
几个小提醒
- 如果你的表格没有
<tbody>标签,可以先手动创建一个:$('#alias-table').append('<tbody></tbody>'),再进行后续操作。 - 要是你想同时展示
tableName和aliasName,只需要修改行的内容,比如:rowsHtml += `<tr><td>${item.tableName}</td><td>${showAlias}</td></tr>`; - 空别名的处理可以根据需求调整,比如不想显示"N/A",直接用
item.aliasName就会显示空白单元格。
内容的提问来源于stack exchange,提问作者user1495394
相关产品推荐
相关产品推荐

