XForms:删除表格行中的触发器(重复)

时间:2011-08-31 08:42:38

标签: repeat xforms orbeon

我正在使用XForms的重复来构建一个表(非常类似于http://wiki.orbeon.com/forms/doc/developer-guide/xforms-repeat)。每一行都应该有一个删除触发器来删除它。以下代码仅删除所选项目,是否可以使用当前重复索引作为at的值?

<xforms:delete nodeset="employees" at="index('employee-repeat')"/>

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

如果每行都有删除触发器,则不需要使用index()功能。相反,只需引用当前节点,如:

<xforms:repeat nodeset="employees">
    ...
    <xforms:trigger>
        <xforms:label>Delete</xforms:label>
        <xforms:delete ev:event="DOMActivate" nodeset="."/>
    </xforms:trigger>
</xforms:repeat>

如果您只有一个触发器用于整个重复(即在列出员工的表的开头和/或结尾),那么您可以使用index()来引用“当前”员工。这意味着用户首先需要单击该员工的某个位置以使其成为当前员工,然后单击该按钮。这是一个有点不同寻常的Web用户界面,所以我宁愿每个员工都有一个删除按钮,或者使用复选框让用户选择他们想要操作的员工。