Xpages 获取所选文档的unid并保存到作用域变量

Xpages 获取所选文档的unid并保存到作用域变量,xpages,Xpages,我有一个带有复选框的viewPanel1。通过单击按钮,我想将所选项目的univ id(逗号分隔)保存到一个范围变量中。我试过这个: var viewPanel=getComponent(“viewPanel1”); var docIDArray=viewPanel.getSelectedIds(); 对于(i=0;i

我有一个带有复选框的viewPanel1。通过单击按钮,我想将所选项目的univ id(逗号分隔)保存到一个范围变量中。我试过这个:

var viewPanel=getComponent(“viewPanel1”);
var docIDArray=viewPanel.getSelectedIds();
对于(i=0;i}

您可以执行以下操作

var vPanel = getComponent("viewPanel");
docIdArray = viewPanel.getSelectedIds();
sessionScope.put("SelectedIds",@Implode(docIdArray,","));
var viewPanel=getComponent(“viewPanel1”);
var docIDArray=viewPanel.getSelectedIds();
var unidArray=新数组();
对于(i=0;i

这可能就行了

另外,不要忘记作用域变量可以保存数组,因此您实际上不需要对数组进行装箱/取消装箱:


sessionScope.put(“selectedds”,getComponent(“viewPanel1”).getselectedds())

这会给我id,但如何获取所选文档的unid?(我把它们放在视图的unid列中)请记住,如果用户选择了大量文档,这可能会导致性能下降。这是一个非常正确的说法!这似乎只给了我最后选择的unid。(在这种情况下,用户将只选择1或2个文档,因此性能应该是正常的)很抱歉,我键入了最后一行,它应该包括@Implode(unidArray),我已经在上面编辑了我的代码。
var viewPanel=getComponent("viewPanel1");
var docIDArray=viewPanel.getSelectedIds();
var unidArray = new Array();
for(i=0; i < docIDArray.length; i++) {
   var unid=database.getDocumentByID(docIDArray[i]).getUniversalID();
   unidArray.push(unid);
}
sessionScope.put("test", @Implode(unidArray, ","));