在内联代码连接器逻辑应用程序中查找 HTML 元素值
Find HTML Element value in Inline Code Connector Logic App
我正在尝试从包含 json、xml 和 html 的 API 多部分响应中获取值。另外 HTML 在该响应中的元素上没有任何 id 和任何 class 。我想在一个元素中获取完整的 table,并希望从它的 tr
中获取值。请建议我如何在 逻辑应用程序 .
中的 inline code
中执行此操作
var response = workflowContext.trigger.outputs.body; // API Response
var multiBody = response.body.$multipart[4].body; // multipartBody
var table = multiBody. // How to get table section and get its tr values
return table;
我已经编写了要在 inline code
连接器中实现的 javascript 代码。我的密码是
var rows = document.getElementsByTagName('table')[4].rows;
var firstRow = rows[0]; // LTV/CLTV Row
var firstCell = firstRow.cells[1]; // LTV/CLTV Index
var firstText = firstCell.innerText;
var firstValue = firstText.substring(0, firstText.indexOf('/') - 1); // LTV
var secondValue = firstText.substring(firstText.indexOf('/') + 2, firstText.lastIndexOf('/') - 1); // CLTV
请帮我看看我该怎么做。
此外,正如文档中提到的,我们可以在内联代码连接器中编写 javascript 那么为什么 getElementById、getElementByTagname 函数在这里不起作用。
内联代码操作为 JavaScript 运行 NodeJS,它实际上没有 DOM 可以像浏览器一样使用的对象。
相反,您将不得不解析 DOM 或仅执行字符串搜索以获得您需要的内容。
解析 DOM 当然不会那么简单,如果 string/regex 搜索不会,最好在 Azure 函数中使用类似 jsdom 的东西剪给你。
我正在尝试从包含 json、xml 和 html 的 API 多部分响应中获取值。另外 HTML 在该响应中的元素上没有任何 id 和任何 class 。我想在一个元素中获取完整的 table,并希望从它的 tr
中获取值。请建议我如何在 逻辑应用程序 .
inline code
中执行此操作
var response = workflowContext.trigger.outputs.body; // API Response
var multiBody = response.body.$multipart[4].body; // multipartBody
var table = multiBody. // How to get table section and get its tr values
return table;
我已经编写了要在 inline code
连接器中实现的 javascript 代码。我的密码是
var rows = document.getElementsByTagName('table')[4].rows;
var firstRow = rows[0]; // LTV/CLTV Row
var firstCell = firstRow.cells[1]; // LTV/CLTV Index
var firstText = firstCell.innerText;
var firstValue = firstText.substring(0, firstText.indexOf('/') - 1); // LTV
var secondValue = firstText.substring(firstText.indexOf('/') + 2, firstText.lastIndexOf('/') - 1); // CLTV
请帮我看看我该怎么做。
此外,正如文档中提到的,我们可以在内联代码连接器中编写 javascript 那么为什么 getElementById、getElementByTagname 函数在这里不起作用。
内联代码操作为 JavaScript 运行 NodeJS,它实际上没有 DOM 可以像浏览器一样使用的对象。
相反,您将不得不解析 DOM 或仅执行字符串搜索以获得您需要的内容。
解析 DOM 当然不会那么简单,如果 string/regex 搜索不会,最好在 Azure 函数中使用类似 jsdom 的东西剪给你。