跳轉至內容

XSLTForms/觸發器不起作用

來自 維基文庫,面向開放世界的開放書籍

觸發器不起作用的一個常見原因是觸發器中的動作未偵聽任何事件。

以下觸發器說明了此問題。它在啟用後,用於使用字串“Hello <strong>World</strong>!”替換當前元素的值。但在按觸發器時,什麼也沒有發生。

<trigger xmlns="http://www.w3.org/2002/xforms">
    <label>Hello World!</label>
    <setvalue ref="."
              value="'Hello &lt;strong&gt;World&lt;/strong&gt;!'"
              />
</trigger>

解決方案是指定導致setvalue動作觸發的事件。

<trigger xmlns="http://www.w3.org/2002/xforms">
    <label>Hello World!</label>
    <setvalue ev:event="DOMActivate"
              xmlns:ev="http://www.w3.org/2001/xml-events"
              ref="."
              value="'Hello &lt;strong&gt;World&lt;/strong&gt;!'"
              />
</trigger>
華夏公益教科書