XForms/帶原點的插入
外觀
< XForms
您希望將新值插入模型例項中,並指定在何處查詢插入的初始值。
您可以向 insert 語句新增 origin 屬性,以告訴 XForms 在何處獲取插入的初始資料。這是優於執行多個 setvalues 的方法。insert 語法的格式如下
<xf:insert ev:event="DOMActivate"
nodeset="instance('persons')/Person"
at="last()" position="after"
origin="instance('init')/Person"/>
一個示例螢幕影像。許多人無法執行示例,因此這一點至關重要。
使用此格式
確保您使用許可證標記所有影像。如果您願意,請使用“署名-相同方式共享 3.0” 創作共用。
確保在 svn 系統中將 mime 型別設定為 text/xml。
<html
xmlns="http://www.w3.org/1999/xhtml"
xmlns:ev="http://www.w3.org/2001/xml-events"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xf="http://www.w3.org/2002/xforms">
<head>
<title>Insert with Origin</title>
<style type="text/css">
@namespace xf url("http://www.w3.org/2002/xforms");
body {font-family:Helvetica, sans-serif}
</style>
<xf:model>
<xf:instance xmlns="" id="persons">
<data>
<Person>
<PersonGivenName>John</PersonGivenName>
<PersonFamilyName>Doe</PersonFamilyName>
<PersonGenderCode>unknown</PersonGenderCode>
<XFormsAwareIndicator>false</XFormsAwareIndicator>
</Person>
<Person>
<PersonGivenName>Sue</PersonGivenName>
<PersonFamilyName>Smith</PersonFamilyName>
<PersonGenderCode>unknown</PersonGenderCode>
<XFormsAwareIndicator>false</XFormsAwareIndicator>
</Person>
</data>
</xf:instance>
<xf:bind nodeset="XFormsAwareIndicator" type="xs:boolean"/>
<!-- initial values for new Person records -->
<xf:instance xmlns="" id="init">
<data>
<Person>
<PersonGivenName></PersonGivenName>
<PersonFamilyName></PersonFamilyName>
<PersonGenderCode>unknown</PersonGenderCode>
<XFormsAwareIndicator>false</XFormsAwareIndicator>
</Person>
</data>
</xf:instance>
</xf:model>
</head>
<body>
<h3>Insert with Origin</h3>
<xf:repeat nodeset="Person" id="person-repeat">
<xf:input ref="PersonGivenName">
<xf:label>First Name: </xf:label>
</xf:input>
<xf:input ref="PersonFamilyName">
<xf:label>Family Name: </xf:label>
</xf:input>
<xf:select1 ref="PersonGenderCode">
<xf:label>Gender: </xf:label>
<xf:item>
<xf:label>Male</xf:label>
<xf:value>male</xf:value>
</xf:item>
<xf:item>
<xf:label>Female</xf:label>
<xf:value>female</xf:value>
</xf:item>
<xf:item>
<xf:label>Unknown</xf:label>
<xf:value>unknown</xf:value>
</xf:item>
</xf:select1>
<xf:input ref="XFormsAwareIndicator">
<xf:label>Indicator: </xf:label>
</xf:input>
</xf:repeat>
<xf:trigger>
<xf:label>Add</xf:label>
<xf:insert ev:event="DOMActivate" nodeset="instance('persons')/Person" at="last()" position="after"
origin="instance('init')/Person"/>
</xf:trigger>
</body>
</html>