【问题标题】:How can I insert XML data into HTML?如何将 XML 数据插入 HTML?
【发布时间】:2019-08-28 11:22:13
【问题描述】:

我正在尝试从 VLC 上的 XML 状态文件中获取数据,并且我想将其放入 HTML 中,以便当状态 XML 更新或被请求时,新信息会出现在 HTML 中。

这是来自status.xml 运行时的 XML 信息。 OMFG - 由于声誉问题,我还不能发布图片。这里是图片的链接。

我想要这些字段:

我对任何直接编程一无所知。我已经运行了一些批处理文件,并且我使用了一些 python 脚本并进行了编辑,但没有别的。我在一定程度上理解标签、函数和列表。

我曾尝试使用“scr”通过“type:text/xml”来导出我的 xml 文件。 - 失败 我尝试使用 viewer.js 文件并对其进行编辑以指向我想要的 xml 文件。 - 失败的。 - 我不明白如何将 xml 数据放入 javascript 文件中,然后可以在 html 中引用该文件。

这是html文件;我是从 twitch 的 rig-developer 工具包中获得的,作为第一个扩展。

<!DOCTYPE html>
<html>
    <head>
        <title>Viewer Page</title>
    </head>
    <body style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;">
        <div id="app" class="full-height"></div>
        <script src="https://extension-files.twitch.tv/helper/v1/twitch-ext.min.js"></script>
        <script src="https://code.jquery.com/jquery-3.3.1.min.js"
        integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
        crossorigin="anonymous"></script>
        <script src="viewer.js" type="text/javascript"></script>
        <script type="http://192.168.0.22:8080/requests/status.xml">{
        </script>
        <h2>Video Game Music playlist</h2>
        <p>Here is what is playing currently</p>
        <div>
            <input type="button"  value="Refresh what's playing" />
        </div>
        <div id="list">
        </div>
    </body>
</html>

这里是xml文件: ]]?>

<?vlc

--package.loaded.httprequests = nil --uncomment to debug changes
require "httprequests"

httprequests.processcommands()

local statusTable=httprequests.getstatus(false)

print('<root>\n')


local item = vlc.input.item()

--data in the information section is presented in a non-standard way to             keep compatibility.

?>
<information>
    <category name="meta">
    <?vlc
      if item then
        local metas = item:metas()
        for k,v in pairs(metas) do
          local metadataContent = vlc.strings.convert_xml_special_chars(     httprequests.xmlString(v) )
          print("<info     name='"..httprequests.xmlString(k).."'>"..metadataContent.."</info>")
        end
      end
    ?>
    </category>
  </information>
</root>

我除了可以找到一种方法将 xml 中的数据放入 html 或任何 html 文件中。事实上,如果有人能告诉我如何将我拥有的 xml 数据放入一个可以更新的 html 文件中,那就太棒了。

我一直在尝试在 youtube 上查找最简单的方法,但我不断看到展示如何将图像从 xml 获取到 html 的视频;我不需要。

事实上,说实话;我想我需要先将 xml 文件放在 Javascript 中还是什么?我认为 html 必须是内联 html,因此必须从 .JS 文件中引用 xml 数据?

我不知道我在说什么。哈哈

【问题讨论】:

  • 你到底想做什么?只显示文件中写入的内容?将其视为 HTML?在里面执行一些代码?
  • 你到底想做什么? - 我正在尝试从 VLC 获取标题、艺术家、日期和名称数据,并将其放入 Twitch 的 html 中。我已将 VLC 播放器设置为从 HTTP 运行,因此我可以使用 gui 界面通过网络控制它。我注意到它有一个“状态”xml,当我运行 xml 时,它会显示所有视频数据。如果我能以某种方式将这些数据转换为 html,我可以将其视为 twitch 上的网络扩展。 (我会假设有一点清理)。我知道解释起来很奇怪。我很抱歉。我不相信我可以将状态文件中的内容写入实际的 html 本身。
  • 我不相信我可以将状态文件 XML 中的内容写入实际 HTML 的原因是因为状态文件看起来只能从其所在的文件夹中运行。它有一些里面的 vlc 函数(我假设)。另外,我想再次道歉,因为我可能没有正确解释我的问题。如果我找到解决方法或能够更好地解释自己,我会写一个解决方案。再次抱歉。

标签: javascript html xml


【解决方案1】:

混合 XML 和 HTML 很棘手。这里有一份 W3C 任务组报告,其中分析了哪些有效,哪些无效:

https://www.w3.org/2010/html-xml/snapshot/report.html

以及 Norm Walsh 的概述演讲:

https://norman.walsh.name/2011/03/26/HTML-XML-Prague

这项工作是几年前完成的,但我认为情况并未发生根本性变化。

【讨论】:

  • 重新链接,这很好 imo - 即使它们破坏了您已经提供了足够的上下文来查找资源,并且资源太大而无法转储到答案中。
猜你喜欢
  • 2012-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-17
相关资源
最近更新 更多