如何使用jQuery从含多个time元素的表格行生成指定结构数组
实现思路
- 定位到
id="customhours"容器下的表格行,逐行遍历提取数据 - 每行第一个
<td>的文本内容为星期字段,直接取去除首尾空格的纯文本 - 每行第二个
<td>内查找所有<time>标签,批量提取每个标签内的时间文本,转为原生数组 - 对时间字段做格式适配:仅1个时间时直接存字符串,存在多个时间时将时间用逗号拼接为字符串,再包裹为数组,匹配要求的输出结构
参考代码
const result = []; $('#customhours tbody tr').each(function() { const day = $(this).find('td:first').text().trim(); const times = $(this).find('td:last time').map(function() { return $(this).text().trim(); }).get(); const timeVal = times.length === 1 ? times[0] : [times.join(', ')]; result.push([day, timeVal]); });
运行结果
执行代码后得到的数组结构和预期完全一致:
[ ["Tuesday", "17:00 - 18:00"], ["Friday", ["16:00 - 17:00, 17:00 - 18:00"]] ]
内容的提问来源于stack exchange,提问作者Nimue
相关产品推荐
相关产品推荐

