XForms/Send
外观
< XForms
您想要向 Web 服务器发送请求,以将额外的 XML 数据添加到您的表单中。这允许 XForms 的不同部分延迟获取数据,直到需要它为止。这使得大型表单加载更快,并避免不必要的网络流量。
send 元素有一个参数,即 submission。这必须是模型中一个 submission 元素的 ID。
以下是一个例子
<xf:send submission="get-additional-data"/>
如果您引用此 submission,则需要在您的模型中有一个对应的 submission。
<xf:model>
<xf:submission id="get-additional-data" .../>
</xf:model>
send 最常见的用法是执行增量模型加载。如果您有一个包含多个选项卡的大型表单,您可以等到用户选择选项卡时再加载该选项卡的数据。
在以下代码片段中,如果用户选择了表单的 tab-5,则加载表单数据的 submission 将被发送到服务器。
<xf:case id="tab-5">
<xf:action ev:event="xforms-select" if="not(instance('tab-5-data')/my-data)">
<xf:send submission="get-tab-5-data"/>
</xf:action>
<h2>Tab 5</h2>
</xf:case>
请参阅 XForms/Incremental_Model_Loading,了解其工作原理的示例。