我需要在后端执行一些ServerSide(SSJS)控件,然后在用户面前出现一个确认对话框。我无法编写正确的代码。
var cVal = getComponent("fieldName").getValue();
if (cVal != "undefined" || cVal != null || cVal != "") {
var db:NotesDatabase = session.getCurrentDatabase();
var checkView:NotesView = db.getView("viewname)");
var checkDoc = checkView.getDocumentByKey(cVal);
if (checkDoc != null) {
var scriptCode = "confirm ("
Are you sure you want to navigate away from this page ? " + "\
n " + "\
n " + "
Press OK to
continue, or Cancel to stay on the current page.
"))";
view.postScript(scriptCode);
}
/ * 在这部分功能应根据用户的选择工作。 如果用户单击“是”,则应打开找到后端的文档。 如果用户单击NO则没有任何反应。 * /
答案 0 :(得分:2)
在从客户端移动到Web之后对应用程序进行编码时,这是一个常见的错误。在客户端,LotusScript可以提示用户交互,暂停,等待响应,然后对该响应采取行动。
除非您通过客户端JavaScript执行所有操作,否则这不适用于网络。有三种选择。
使用XPages对话框还可以让您与应用程序一致地设置对话框的样式,而不是被迫接受浏览器样式,在某些浏览器中,浏览器样式可能会受到限制。