XForms/載入
外觀
< XForms
您希望在當前表單上載入新的資源。
在 HTML 中,連結很簡單。您使用 HTML 錨標籤
<a href="http://example.com">like label</a></nowiki>
但是,在 XForms 中,它稍微複雜一些
<xf:trigger appearance="minimal">
<xf:label>Go to Google</xf:label>
<xf:action ev:event="DOMActivate">
<xf:load show="replace">
<xf:resource value="'http://www.google.com'"/>
</xf:load>
</xf:action>
</xf:trigger>
XForms 的 xf:load 元素具有幾個屬性。
- ref - 對單個節點的靜態引用
- resource - 靜態 URL,例如相對 URL 或絕對 URL
- show - 是否建立新頁面或替換當前頁面。show 可以有兩個值:new 或 replace。
- target - 要執行的目標操作
一個是載入資源的 URI,另一個是 show 屬性。show 屬性可以取“replace”值,這將用新資源替換當前表單,也可以取“new”值,這將在您的網路瀏覽器中開啟一個新標籤頁,或者如果您正在執行較舊的瀏覽器(如 IE 6)則會開啟一個新視窗。
<xf:load resource="search.xq" show="new"/>
<xf:load resource="search.xq" show="replace"/>
xf:load 還可以用於在表單載入時執行本地 javascript 函式
<xf:action ev:event="xforms-ready">
<xf:load resource="javascript:init()"/>
</xf:action>
請注意,xf:load 的 ref 屬性只能是靜態字串。您不能在 XForms 應用程式更改時更改它。
如果您需要載入動態字串,則可以透過在 xf:load 元素中使用 xf:resource 元素來實現。xf:resource 元素具有一個 value 屬性,用於儲存所有動態表示式。
例如,以下示例連線了一個 URL 和來自輸入欄位的搜尋查詢。
<xf:load show="replace">
<xf:resource value="concat(url, q)"/>
</xf:load>
某些實現允許您根據模式中的資料動態建立 URL。
<xf:load ev:event= "DOMActivate"
resource= "http://www.google.com/{concat(string(instance('instance')/a), '{', '{{', string(instance('instance')/b), '}', '}}')}/{{something}}/else">
</xf:load>
XForms/使用載入進行搜尋 - 此示例演示瞭如何使用 xf:load 元素使用 REST 搜尋服務 XForms/輸出和連結 此示例向用戶呈現一個連結列表。使用者從列表中選擇一個,然後載入該專案