【问题标题】:Is there a standard representation for HTML forms?HTML 表单是否有标准表示?
【发布时间】:2023-03-23 13:09:01
【问题描述】:

我正在开发一个系统,该系统需要用典型元素(如文本字段、选择框、标签等)表示 html 表单,但它只能说 JSON 或 XML,而不是 HTML。

我总是可以编写自己的 JSON 或 XML 转换器和解析器来表示所需格式的表单,但我想坚持某些标准(如果存在)以进行变更管理和可扩展性。此外,该标准必须具有现有的 Javascript 解析器。

我正在查看XUL,但它似乎没有表单标签,并且看起来像是仅适用于基于 Mozilla 的应用程序的 DSL。我也找不到相同的 Javascript 解析器。

我相信这应该是一个相当普遍的问题,有人已经解决了,但我找不到它。任何指针将不胜感激。

【问题讨论】:

  • “JSON/XML”是什么意思?您的意思是要么 JSON XML,还是某种奇怪的混合格式?
  • 除了各种框架收集<input>元素值时,没有“标准”将表单主体序列化为JSON或XML。听起来你说的不止这些(“段落等”)。
  • 我的意思是 JSON 或 XML。表单元素现在可以使用。对标签段落的支持将是理想的。

标签: javascript html xml json standards


【解决方案1】:

HTML 表单的标准表示是... HTML 表单。

据我所知,没有人发明了一种替代方式来代表它们,因为,好吧,你为什么会呢?它们已经是声明性的了。

谢天谢地,鉴于 HTML 可以编写为 XML(我们称之为 XHTML),XHTML 表单已经满足您的 XML 要求。

就在 JavaScript 中解析它们而言,这取决于您所说的解析是什么意思。 John Resig is working on a full HTML parser in JavaScript,但如果您只是想通过 DOM 读取/写入值,您可以在 JavaScript 中完成。

HTML 表单的规范在这里:

如何将 HTML 编写为 XML 的规范是 XHTML 1.0 规范:

如果您更愿意使用 HTML5 表单,它添加了一些新的表单字段(请参阅http://diveintohtml5.ep.io/forms.html),相关规范是:

【讨论】:

  • @Tom:听到了。 W3C 至少在网络上放弃了它们。
【解决方案2】:

mustache.js 或 ejs 等模板系统可以帮助您将 json 转换为 html。

http://mustache.github.com/

http://embeddedjs.com/index.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-04
    • 2013-12-23
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    • 1970-01-01
    • 2011-04-07
    相关资源
    最近更新 更多