为什么不从Xpages动态视图中删除文档
我用DynamicViewPanel创建了一个新的XPage,它在特定的Notes视图中列出文档。然后,我将动态视图面板配置为显示每行的复选框。然后,我在“动态视图”面板下方创建了一个按钮,该按钮带有选中复选框的文档的计划,并单击该按钮将其删除。下面是我的按钮的Xpages代码,但为什么这不起作用呢为什么不从Xpages动态视图中删除文档,xpages,Xpages,我用DynamicViewPanel创建了一个新的XPage,它在特定的Notes视图中列出文档。然后,我将动态视图面板配置为显示每行的复选框。然后,我在“动态视图”面板下方创建了一个按钮,该按钮带有选中复选框的文档的计划,并单击该按钮将其删除。下面是我的按钮的Xpages代码,但为什么这不起作用呢 <xp:button value="Delete" id="delete"> <xp:this.onclick submit="true" refreshMode="com
<xp:button value="Delete" id="delete">
<xp:this.onclick submit="true" refreshMode="complete">
<![CDATA[#{javascript:var viewPanel=getComponent
("dynamicViewPanel1");
var docIDArray=viewPanel.getSelectedIds();
for(i=0; i < docIDArray.length; i++){
var docId=docIDArray[i];
var doc=database.getDocumentByID(docId);
doc.remove(true);
}}]]></xp:this.onclick>
</xp:button>
编辑:更改为下面的选项后,现在似乎正在工作
<xp:button value="Delete" id="delete">
<xp:eventHandler event="onclick" submit="true" refreshMode="complete">
<xp:this.action>
<xp:actionGroup>
<![CDATA[#{javascript:var viewPanel=getComponent
("dynamicViewPanel1");
var docIDArray=viewPanel.getSelectedIds();
for(i=0; i < docIDArray.length; i++){
var docId=docIDArray[i];
var doc=database.getDocumentByID(docId);
doc.remove(true);
}}]]>
</xp:actionGroup>
</xp:this.action>
</xp:eventHandler>
</xp:button>
找到了一个解决方案,并将其作为问题中的已编辑代码发布。将button元素中的标记更改为包含事件处理程序,并将其包含在操作组标记中我知道这已经得到了回答-尽管说实话,我不确定我是否喜欢回答中的代码。不,它“看起来不对劲”。我把它粘贴到我的设计师那里,它看起来不对劲。我想应该是这样的:
<xp:button value="Label" id="button3">
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete">
<xp:this.action><![CDATA[#{javascript:var viewPanel=getComponent
("dynamicViewPanel1");
var docIDArray=viewPanel.getSelectedIds();
for(i=0; i < docIDArray.length; i++){
var docId=docIDArray[i];
var doc=database.getDocumentByID(docId);
doc.remove(true);
}}]]></xp:this.action>
</xp:eventHandler></xp:button>
确保您具有正确的ACL访问权限。如果您还没有构建登录函数,那么您的用户名将为“匿名”。确保“匿名”具有删除权限。@SteveZavocki当我第一次在中打开应用程序时,它具有登录功能browser@SteveZavocki此外,在ACL中,我属于“Notes开发人员”组,我们已勾选了“删除文档”,请验证数组是否包含已勾选的文档。在for循环中添加打印语句,将唯一ID写入日志。@SteveZavocki谢谢steve会尽快尝试的