You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power Apps重复区域返回查看项目时无法加载数据求助

解决方案:从SharePoint富文本列解析表格数据到重复区域

1. 解析HTML表格为本地集合

核心是把富文本里的结构化HTML表格转换成Power Apps可识别的集合。假设你的SharePoint列表为MainList,当前选中项目是SelectedItem,存储表格的富文本列叫TableData,可以在详情页的OnVisible事件中添加以下代码:

// 提取HTML表格的完整内容
Set(varRawTable, Match(SelectedItem.TableData, "<table.*?</table>", MatchOptions.Contains & MatchOptions.IgnoreCase).FullMatch);

// 拆分出所有表格行,去除<tr>标签
Set(varRows, Split(Substitute(Substitute(varRawTable, "<tr>", ""), "</tr>", ""), "</tr><tr>"));

// 初始化存储数据的集合
Clear(colTableData);

// 遍历每行,拆分单元格并整理成集合
ForAll(
    varRows,
    If(
        !IsBlank(Result) && !Result in ["<thead>","</thead>","<tbody>","</tbody>"], // 过滤表头容器和空行
        Collect(
            colTableData,
            {
                Column1: Trim(Substitute(Substitute(First(Split(Result, "</td><td>")).Result, "<td>", ""), "</td>", "")),
                Column2: Trim(Substitute(Substitute(Last(FirstN(Split(Result, "</td><td>"),2)).Result, "<td>", ""), "</td>", "")),
                // 按你的表格列数继续添加Column3、Column4...
                RowID: GUID() // 给每行加唯一ID,方便后续增删操作
            }
        )
    )
);

2. 绑定集合到重复区域

将重复控件(比如Gallery)的Items属性设置为colTableData,然后把Gallery内的输入控件和集合字段绑定:

  • 第一个文本框Default:ThisItem.Column1
  • 第二个文本框Default:ThisItem.Column2
  • 后续列依次对应集合内的字段

3. 优化保存逻辑(保障解析准确性)

为了避免后续解析出错,保存时要生成结构规范的HTML表格,不要带多余的样式或嵌套标签。比如保存按钮的OnSelect事件代码:

// 生成标准HTML表格字符串
Set(
    varHTMLTable,
    "<table><thead><tr><th>列1</th><th>列2</th></tr></thead><tbody>" & 
    Concat(
        colTableData,
        "<tr><td>" & Column1 & "</td><td>" & Column2 & "</td></tr>"
    ) & 
    "</tbody></table>"
);

// 将表格Patch到SharePoint富文本列
Patch(
    MainList,
    SelectedItem,
    {TableData: varHTMLTable}
);

注意事项

  • 如果表格列数更多,需要同步调整解析和拼接代码中的字段数量
  • 若富文本包含额外HTML样式(如<span>、style属性),可在解析时用Substitute清理,比如Substitute(Result, "<span style='color:red'>", "")
  • 测试时可先输出varRawTable和varRows的值,确认表格内容提取正确

内容的提问来源于stack exchange,提问作者maicolo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 03:10:06