跳转至内容

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>
华夏公益教科书