【发布时间】:2015-05-07 05:09:55
【问题描述】:
我有一个重复控件,其中包含一个按钮,该按钮将处理用户选择的文档。我的第一个用例是删除。我使用 view.postScript 检测用户是否选择了至少一个文档并发布错误消息(如果没有)。
我想添加一个确认对话框,确认用户想要对文档执行操作(例如删除它们),但找不到执行此操作的方法。
理想情况下,我想在我当前的 SSJS 中完成这一切。
下面是我的代码,其中有一个存根用于我想要求用户确认的位置。
任何帮助将不胜感激。
//Did the user select a document
var hasSelected:Boolean = false;
for (var id in SelectedDocs.getSelectedIDs()) {
hasSelected = true;
break
}
//If false then set a warning
if (hasSelected == false)
{
x="alert('Error\\n\\nPlease select one or more documents to delete.\\n\\n');";
view.postScript(x)
return
}
//If true then ask confirmation
if (hasSelected == true)
{
}
var rspView:NotesView = database.getView("(dbAllRpPCTasks)")
for (var id in SelectedDocs.getSelectedIDs()) {
//Get each selected doc
var doc:NotesDocument = database.getDocumentByID(id);
//Get child docs and delete them
var key:String = doc.getItemValueString("ID");
var dc:NotesDocumentCollection = rspView.getAllDocumentsByKey(key);
if (dc.getCount() != 0)
{dc.removeAll(true);}
//Delete the selected doc
doc.remove(true)
doc.recycle();
SelectedDocs.setSelectedState(id,false);
}
感谢所有建议。我正在回应弗兰克的回答。尝试编写 CSJS 来确定用户是否选择了文档然后继续。
在 CSJS 中我的按钮的点击事件中,我有以下内容:
var dtList = document.getElementsByName("#{id:dataView1.getSelectedIds()}");
confirm("What is the length?" + dtList.length);
confirm("Can I get an item?" + dtList.item(0));
它返回零长度,并且项目未定义。
【问题讨论】:
-
Bryan - 你没有接受任何答案。这些对你有用吗?
标签: xpages xpages-ssjs