当前位置: 首页 > article >正文

用nz-tabel写一个合并表格

用nz-tabel写一个合并表格

		<nz-table #basicTable [nzData]="tableSearchStatus.dataList" nzBordered><thead><tr><th>班级</th><th>姓名</th><th>年龄</th><th>电话</th></tr></thead><tbody><!-- 使用 ng-container 进行循环 --><ng-container *ngFor="let classItem of basicTable.data; let i = index"><!-- 第一行:班级名称和第一个学生的详细信息 --><tr *ngIf="classItem.students.length > 0"><td [attr.rowspan]="classItem.students.length">{{ classItem.className }}</td><td>{{ classItem.students[0].name }}</td><td>{{ classItem.students[0].age }}</td><td>{{ classItem.students[0].phone }}</td></tr><!-- 后续行:其余学生的详细信息 --><tr *ngFor="let student of classItem.students.slice(1)"><td>{{ student.name }}</td><td>{{ student.age }}</td><td>{{ student.phone }}</td></tr><!-- 如果没有学生,则单独一行显示班级信息 --><tr *ngIf="classItem.students.length === 0"><td>{{ classItem.className }}</td><!-- 也可以不合并  在追加两个td --><td colspan="3">无学生信息</td></tr></ng-container></tbody></nz-table>
tableSearchStatus.dataList = [{className: "301班",students: [{ name: "aa1", age: 11, phone: "1231231222" },{ name: "aa2", age: 11, phone: "1231231233" },{ name: "aa3", age: 11, phone: "12312312333" },{ name: "aa4", age: 11, phone: "1231231233333" },{ name: "aa5", age: 11, phone: "123123122222" },],},{className: "12班",students: [{ name: "aa1", age: 11, phone: "12312312" },{ name: "aa2", age: 11, phone: "12312312" },],},{className: "322班",students: [{ name: "aa", age: 11, phone: "12312312" },{ name: "aa", age: 11, phone: "12312312" },],},{className: "3111班",students: [],},{className: "233班",students: [{ name: "aa", age: 11, phone: "12312312" },{ name: "aa", age: 11, phone: "12312312" },],},];

在这里插入图片描述

 	 <table border="1"><thead><tr><th>班级</th><th>姓名</th><th>年龄</th><th>电话</th></tr></thead><tbody><ng-container *ngFor="let classItem of tableSearchStatus.dataList"><tr *ngIf="classItem.students.length > 0; else noStudentsTemplate"><td [attr.rowspan]="classItem.students.length">{{ classItem.className }}</td><td>{{ classItem.students[0].name }}</td><td>{{ classItem.students[0].age }}</td><td>{{ classItem.students[0].phone }}</td></tr><tr *ngFor="let student of classItem.students.slice(1)"><td>{{ student.name }}</td><td>{{ student.age }}</td><td>{{ student.phone }}</td></tr><ng-template #noStudentsTemplate><tr><td>{{ classItem.className }}</td><td colspan="3">无学生信息</td></tr></ng-template></ng-container></tbody></table>

在这里插入图片描述

http://www.lryc.cn/news/2393664.html

相关文章:

  • matlab计算转子系统的固有频率、振型、不平衡响应
  • leetcode hot100刷题日记——29.合并两个有序链表
  • 【机器人】具身导航 VLN 最新论文汇总 | Vision-and-Language Navigation
  • Windows 安装 WSL2 并运行 Ubuntu 22.04 指南
  • AI情感陪伴在医疗领域的核心应用潜力
  • 【计算机网络】第1章:概述—分组延时、丢失和吞吐量
  • Python Day38
  • DeepSeek R1 模型小版本升级,DeepSeek-R1-0528都更新了哪些新特性?
  • 线路板厂家遇到的PCB元件放置的常见问题有哪些?
  • 【C/C++】无限长有序数组中查找特定元素
  • SQL正则表达式总结
  • 力扣经典算法篇-13-接雨水(较难,动态规划,加法转减法优化,双指针法)
  • STM32 -- USB虚拟串口通信
  • uni-app开发特殊社交APP
  • Linux中Shell脚本的常用命令
  • RabbitMQ项目实战
  • 安卓开发用到的设计模式(3)行为型模式
  • 生成模型:从数据学习到创造的 AI 新范式
  • 尚硅谷redis7 90-92 redis集群分片之集群扩容
  • RabbitMQ性能调优:关键技术、技巧与最佳实践
  • 系统架构中的组织驱动:康威定律在系统设计中的应用
  • TypeScript 中高级类型 keyof 与 typeof的场景剖析。
  • Android LiveData 详解
  • 为什么共现矩阵是高维稀疏的
  • 离散化算法的二分法应用
  • IntelliJ IDEA 中进行背景设置
  • Dart语言学习指南「专栏简介」
  • AWS之AI服务
  • Docker 部署项目
  • 半导体厂房设计建造流程、方案和技术要点-江苏泊苏系统集成有限公司