xforms 不能在浏览器上运行

Posted

技术标签:

【中文标题】xforms 不能在浏览器上运行【英文标题】:xforms not working on browser 【发布时间】:2018-12-11 07:55:49 【问题描述】:

我正在尝试在浏览器上运行 xForms,但它没有显示在浏览器中。这是我的xml代码:

<xforms>

<model>
  <instance>
  <person>
    <fname/>
    <lname/>
  </person>
  </instance>
  <submission id="form1" method="get"
   action="submit.asp"/>
</model>

<input ref="fname">
<label>First Name</label></input><br />

<input ref="lname">
<label>Last Name</label></input><br /><br />

<submit submission="form1">
<label>Submit</label></submit>
</xforms>

另外,我想知道应该使用哪个引擎来运行 XForms。

提前致谢

【问题讨论】:

XForms 在设想 Xhtml 时已经成为遥远的过去。常规 Web 浏览器不支持,也从来不支持。如果您绝对想使用它,您可能会遇到 XSLTForms、Orbeon 和其他旧的开源 XForms 代码库。 xForms:Input doesn't show in browser的可能重复 【参考方案1】:

在一些 javascript 框架成熟到可以接近 XForms 之前,您可以将 XForms 与 XLSTForms 之类的插件一起使用

只需下载它,然后在您网页下的 XSLTForms 文件夹中解压即可。

在页面顶部添加此处理指令:

<?xml-stylesheet href="xsltforms/xsltforms.xsl" type="text/xsl"?>

更改元素以添加命名空间声明:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/01/xforms">

并像这样在所有 XForms 元素前面加上 xf:

<xf:model>
  <xf:instance>
  <person xmlns="">
    <fname/>
    <lname/>
  </person>
  </xf:instance>
  <xf:submission id="form1" method="get" action="submit.asp"/>
</xf:model>

<xf:input ref="fname">
  <xf:label>First Name</xf:label>
</xf:input><br />

<xf:input ref="lname">
  <xf:label>Last Name</xf:label>
</xf:input><br /><br />

<xf:submit submission="form1">
  <xf:label>Submit</xf:label>
</xf:submit>

您可以在the XSLTForms Wikibook找到更多文档

【讨论】:

以上是关于xforms 不能在浏览器上运行的主要内容,如果未能解决你的问题,请参考以下文章

Cordova 上的 AngularJS $resource POST 调用不能在 iOS/Android 设备上运行,但可以在浏览器上运行

Orbeon 2020.1.2 CE 和 TinyMCE

我可以在 XForms 标签和提示上添加丰富的格式(粗体、斜体、下划线)吗?

如何限制特定绑定到 XForms 中的提交?

使用 xforms 在元素中换行

angularDart 怎么运行在其他浏览器上