1

我正在编写一个客户端 .NET 应用程序,需要生成一些报告。我想使用 HTML 5、CSS3 和 JavaScript 通过执行以下操作生成显示表格数据和图形的报告:

  1. 生成一个 DataSet 并将其保存为 XML。
  2. 将 XML 数据嵌入到预定义的 HTML 页面中。
  3. 在默认浏览器中加载 HTML 页面。
  4. 使用 jQuery,解析 XML,并生成显示报告所需的 HTML 元素。
  5. 没有 Web 服务器,只有我的客户端应用程序。

我在网上读到我不应该在 HTML 页面中嵌入 XML 数据,但这似乎适用于所有主要浏览器的最新版本。我的问题是:

  1. 为什么我不应该这样做?
  2. 如果我不应该这样做,那么我还有其他选择来使用本地浏览器的功能来生成报告吗?
4

1 回答 1

0

有很多东西可以在不一定支持的浏览器中工作或运行。与许多错误放置分号可能导致代码无法编译的服务器端语言不同,浏览器更加宽容。

因此,结果是,我们最终会遇到一个充满零散网站的世界,这些网站无法对抗 W3C 验证器。我们得到了这么多绳索,以至于我们有时会用它来吊死自己。

根据您的调查和研究,您认识到 XML 可以嵌入到 HTML 中。这种成功的部分原因在于 HTML 是 XML 的一个松散子集。然而,HTML 有自己的规则,由中央委员会定义,该委员会决定浏览器应如何实现其功能。

我认为你使用这种策略的最大风险是: 仅仅因为它适用于今天的浏览器并不意味着它适用于明天的浏览器。

换句话说,因为在 HTML 中嵌入 XML 可能不在规范中,浏览器供应商不会觉得有必要继续支持这样的功能,这可能是由于过去从规范中删除的功能,或者只是由于 HTML 和 XML 的相似根源导致的怪异事故。

我不确定你的想法为什么有效,或者它是否在规范中,但我知道还有其他解决方案:

要回答您的替代问题,请查看XSLT,它用于将 XML 文档转换为有效的 HTML。这可以在没有 Web 服务器的情况下使用,只要您的应用程序可以同时提供 XML 和 XSLT 文件。

于 2012-05-05T01:06:59.537 回答