如何在 XPages Extension Library <xe:dataView> 设计元素中获取标记行?

How to get marked rows in the XPages Extension Library <xe:dataView> design element?

我有一个带有设计元素的 XPage。我怎样才能得到选中行的列表 post 给代理?

<xe:dataView id="dataView1" columnTitles="true"
    expandedDetail="true" var="dview1" 
    openDocAsReadonly="false" rows="15" showCheckbox="true"
    showHeaderCheckbox="true">

谢谢!

对于客户端,您可以使用Dojo。以下 CSJS 脚本将为所有选定行 return NoteIds:

dojo.query(".lotusFirstCell > input:checked").attr('value')

对于服务器端,您可以通过以下方式获取所选文档的ID:

var idList = getComponent("dataView1").getSelectedIds();

这将 return NoteID 的字符串数组。然后将其传递给内存中的文档并调用代理。

var doc = database.createDocument();
doc.replaceItemValue("IDList", IDList);

var agent:NotesAgent=database.getAgent("SomeAgent");
agent.runWithDocumentContext(doc);

完美! 这正是我需要的:

var IDs = dojo.query(".xspFirstCell > input:checked").attr('value');