我收到的错误根据代码不符合预期。
这是我得到的错误。
Attempting to access a sequence as a singleton item (org.orbeon.saxon.trans.XPathException)
这是我的添加按钮代码:
<xforms:trigger appearance="minimal" id="repeat-add-id" ref=".[$summary='false' and instance('abc-instance')/product/accounts]">
<xforms:label>
<span class="input-label">Add</span>
</xforms:label>
<xforms:action ev:event="DOMActivate">
<xforms:insert nodeset="instance('abc-instance')/product/accounts[last()<10]"
origin="instance('abc-instance-template')/product/accounts" />
<!-- <xforms:message modal="level">Xforms Message</xforms:message> -->
</xforms:trigger>
这是我的摘要变量定义
<xxforms:variable name="summary" select="instance('abc-attributes')/form-global/summary"/>
如果我删除了<xforms:action>
中的插入命令,它将不会显示错误对话框。
感谢任何帮助。
答案 0 :(得分:2)
我发现了问题。触发器本身的代码没有任何问题。我在代码的后半部分使用xxforms:valid()
作为节点集instance('abc-instance')/product/accounts
。在第一次运行时,由于只有一个节点,因此没有错误。但是,当我单击添加按钮链接时,有2个节点,但xxforms:valid()
需要单个节点,因此出现错误消息。
<强>要点:强>
所以这里的底线是,当您看到此错误 “尝试将序列作为单件项目 ”时,这意味着您的表单中有一些功能期望单个节点的是参数,但存在多个节点。