跳轉到內容

XForms/動態載入 JavaScript

來自華夏公益教科書,自由的教科書

有時 XForms 資料元素無法完成您需要的所有操作。這在異常處理中尤為常見。發生這種情況時,您可以動態載入 JavaScript 程式來處理所需的功能。

此示例將使用 XForms 的 load 元素。但與大多數 JavaScript 函式不同,它不會在需要之前載入到瀏覽器中。

示例程式

[編輯 | 編輯原始碼]

以下是在 XForms 觸發器中使用 load 元素的示例

首先,您需要一個小型 JavaScript 函式來進行測試,如下所示

  <script type="text/javascript">
    var MyJavaScript=function(){
     alert('Hello From JavaScript');
    }  
  </script>

然後,您可以使用觸發器中的 Load 函式呼叫此 JavaScript 函式

<xf:trigger>
  <xf:label>Run JavaScript</xf:label>
  <xf:action ev:event="DOMActivate">
   <xf:load resource="javascript:MyJavaScript()" />
   ........
  </xf:action>
</xf:trigger>

載入 XForms 應用程式

您還可以使用以下示例從 XForms 例項傳遞資料

function myjavascriptfunction(id) {
  // We get the instance element
  var instanceElement = document.getElementById(id);
   if (instanceElement!=null) {
   // XForms exposes the retrieval of the instance document from the model element which *should*
   // be the parent for the instance element.
   var instance = instanceElement.parentNode.getInstanceDocument(id);
   }
}

當用戶選擇此觸發器時,JavaScript 函式 my-javascript-function 將被動態載入到 XForm 應用程式中並執行。

參考資料

[編輯 | 編輯原始碼]

該程式的靈感來自 Backstop Media 的自由撰稿人 Nicholas Chase 釋出的以下示例。

連結在此:IBM XForms 技巧:呼叫 JavaScript


下一頁: 高階搜尋 | 上一頁: 面校驗
主頁: XForms
華夏公益教科書