【问题标题】:Logic Apps - Inject HTML tag in an HTML table逻辑应用程序 - 在 HTML 表中注入 HTML 标记
【发布时间】:2019-06-19 10:15:41
【问题描述】:

对逻辑应用比较陌生,不熟悉所有功能。

我创建了一个简单的逻辑应用程序,它将每隔一段时间检查一个 RSS 提要,循环它找到的每个项目,只获取某些数据(标题、摘要和 URL 链接),将它们粘贴到 HTML 表格中,然后发送一封电子邮件结果。

是否可以在 HTML 表格中注入 HTML 标签?

我尝试添加带有一些固定文本的<b></b> 标签,希望我能在我的电子邮件中找到一些粗体文本。相反,我只得到了常规文本和 HTML 标记。

这是我当前实现的代码视图。我只粘贴了 Create_HTML_table 部分。

"Create_HTML_table": {
    "inputs": {
        "columns": [
            {
                "header": "Title",
                "value": "@item()['title']"
            },
            {
                "header": "Description",
                "value": "@item()?['summary']"
            },
            {
                "header": "URL",
                "value": "@item()?['primaryLink']"
            },
            {
                "header": "Thumbnail",
                "value": "@item()?['links'][1]"
            },
            {
                "header": "Thumbnail Image",
                "value": "<img src='@item()?['links'][1]' width='200' height='200'>"
            },
            {
                "header": "Test",
                "value": "<b>This text is bold</b>"
            }
        ],
        "format": "HTML",
        "from": "@body('List_all_RSS_feed_items')"
    },
    "runAfter": {
        "Initialize_variable": [
            "Succeeded"
        ]
    },
    "type": "Table"
},

如您所见,我尝试使用 &lt;b&gt; 标记,但我的最终目标是生成缩略图,其来源将是来自同一 RSS 提要的值。我正在获取图像 URL (@item()?['links'][1]),但输出是纯文本。

提前致谢

【问题讨论】:

  • 将此表构建为函数可能更容易。您仍然可以使用逻辑应用来构建电子邮件发送操作。
  • @AdAstra 再次感谢您的评论!你会说它在 Azure Function App 中可能更容易吗?在电子邮件发送操作中,我只检查了 IsHTML 选项。
  • 公平地说,我想我最终会将整个事情作为一个函数来完成。所有提要都可以存储在 Jason 格式的存储 blob 中。这样你也可以设计一个“华丽”的电子邮件。
  • 我刚刚也尝试了内联代码,最多 1024 个字符。 docs.microsoft.com/en-us/azure/logic-apps/… 我可能还会在这里使用一个函数:)
  • @AdAstra 是的,看过了。为此,您需要一个与逻辑应用关联的集成帐户。我不认为我所追求的是可能的。如果一个简单的&lt;b&gt;This text is bold&lt;/b&gt; 显示为 This text is bold 即使我正在创建一个 HTML 表格并将电子邮件设置为 IsHTML,那么我不知道。非常感谢您的意见

标签: azure azure-logic-apps


【解决方案1】:

我在 HTML 表格中遇到过类似的困境,并从Alex's blog 获得指导 基本上使用变量格式化表格。

将 varStyle 中的样式定义为 Object

{
"cellStyle": "style\"font-family: Calibri; padding: 5x; border: 1px solid 
black;\"",
"headerStyle": "style\"font-family: Helvetica; padding: 5x; border: 1px solid black;\"",
"rowStyleHighValues": "style=\"font-size: 110%; background-color:#ff9c33\"",
"rowStyleLowValues": "style=\"background-color:#fcff33\"",
"tableStyle": "style\"border-collapse: collapse;\""
}

用表头初始化字符串变量

<table style"border-collapse: collapse;">
<tr>
 <th style"font-family: Helvetica; padding: 5x; border: 1px solid black;">Line#</th>
 <th style"font-family: Helvetica; padding: 5x; border: 1px solid black;">Item</th>
 <th style"font-family: Helvetica; padding: 5x; border: 1px solid black;">Description</th>


</tr>

将表格作为字符串应用,在我的例子中是按行

            "For_each": {
            "actions": {
                "Append_to_string_variable": {
                    "inputs": {
                        "name": "varHTMLTable",
                        "value": "<tr @{if(equals(items('For_each')?['Order_x0020_Quantity'], items('For_each')?['Received_x0020_Quantity']), variables('varStyle').rowStyleLowValues, if(equals(coalesce(items('For_each')?['Received_x0020_Quantity'],'NULL'),'NULL'),'',variables('varStyle').rowStyleHighValues))}>\n     <td @{variables('varStyle').cellStyle}>@{items('For_each')?['ASN_LineNumber']}</td>\n     <td @{variables('varStyle').cellStyle}>@{items('For_each')?['Buyer_ItemID']}</td>\n     <td @{variables('varStyle').cellStyle}>@{items('For_each')?['Buyer_ItemDescription']}</td>\n </tr>"
                    },
                    "runAfter": {},
                    "type": "AppendToStringVariable"
                }
            },

并关闭表格括号。

我的逻辑应用流程:

有以下输出

【讨论】:

    猜你喜欢
    • 2020-06-01
    • 1970-01-01
    • 2022-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-04
    • 2022-12-20
    • 1970-01-01
    相关资源
    最近更新 更多