首页 > 解决方案 > 如何使用 JavaScript 从 Mule API html 响应中选择特定标签?

问题描述

我有一个Mule 应用程序,它以文本形式返回一个html 文档,该文档包含具有我要访问的信息的标签<tr/><td/>如何从 Mule API html 响应中选择特定标签?

async function getTag(env, val) {
    try {
        let hashes = await fetch(`/admin/api/html/ref/${env}/${val}`)
            .then(res => { return (res.text()) })
            .then(data => {
                let count = 0
                console.log(data)
            })
    } catch (error) {
        console.log(error)
    }

标签: javascriptxmlmulefetchdom-manipulation

解决方案


如果我理解正确,您想解析 API 调用返回的 html 文本并从中检索一些信息?

如果是,您需要使用 DOMParser 对象来解析 html 响应,然后按照您喜欢的方式处理它。

这是一个例子

var parser = new DOMParser();
var htmlDoc = parser.parseFromString(txt, 'text/html');
 // do whatever you want with htmlDoc.getElementsByTagName or using htmlDoc.querySelector

在你的情况下,你想要所有,<td>所以你做类似的事情

// use any selector you would like
var info = htmlDoc.querySelectorAll("tr");

参考: DOMParser - Mozilla


推荐阅读