DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> XForms 和 XPath
XForms 和 XPath
編輯:XML詳解     

XForms 綁定

  XForms 使用兩個部分來定義數據:XForms 模型和 XForms 用戶界面。

  XForms 模型是針對數據的一個 XML 模板(實例),而 XForms 用戶界面是對數據輸入和顯示的描述。

  XForms 使用 XPath 來定義這個兩個部分的連接。這被稱為綁定(binding)。

  XPath

  XPath 用於定義 XML 文檔的各部分的 W3C 標准語法。

  XPath 使用路徑表達式來標示 XML 文檔中的節點。這些表達式與您在計算機系統中看到的文件路徑表達式非常類似。

  XPath 表達式:

/person/fname

  對 XML 文檔中的 fname 節點進行尋址:

<person>
  <fname>David</fname>
  <lname>Smith</lname>
</person>

  在我們的 XPath 教程 中學習更多有關 XPath 的知識。

  使用 Ref 進行綁定

  XForms 模型是這樣的:

<instance>
 <person>
  <name>
   <fname/>
   <lname/>
  </name>
 </person>
</instance>

  XForms 用戶界面可使用 ref 屬性來捆綁 <input> 元素:

<input ref="name/fname">
<label>First Name</label>
</input>
<input ref="name/lname">
<label>Last Name</label>
</input>

  上面例子中的 ref="name/fname" 屬性是一個指向實例模型中 <fname> 元素的 XPath 表達式。它可將輸入域捆綁到正從表單收集數據的 XML 文檔(實例)中的 <fname> 元素。

  XForms 用戶界面也可以使用引用:

<input ref="/person/name/fname">
<label>First Name</label>
</input>
<input ref="/person/name/lname">
<label>Last Name</label>
</input>

  在上面的例子中,XPath 表達式起始部位的正斜槓 (/) 指示 XML 文檔的根。

  使用 Bind 進行綁定

  XForms 模型是這樣的:

<model>
<instance>
 <person>
  <name>
   <fname/>
   <lname/>
  </name>
 </person>
</instance>
<bind nodeset="/person/name/fname" id="firstname"/>
<bind nodeset="/person/name/lname" id="lastname"/>
</model>

  XForms 用戶界面可使用 bind 屬性來捆綁 <input> 元素:

<input bind="firstname">
<label>First Name</label>
</input>
<input bind="lastname">
<label>Last Name</label>
</input>

  為什麼會有兩種將輸入控件元素捆綁到實例數據的方法呢?

  怎麼說呢,當您在復雜的應用程序中開始使用 XForms 時,您會發現,使用 bind 進行綁定是一種更靈活的處理多重表單和多重實例模型的方法。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved