Javascript Xpages部分刷新已停止工作

Javascript Xpages部分刷新已停止工作,javascript,xpages,partial-page-refresh,xpages-ssjs,Javascript,Xpages,Partial Page Refresh,Xpages Ssjs,我有一个dijit,它显示可用联系人的列表。选定的联系人然后显示在视图面板中,该面板通过部分刷新进行更新,直到我添加了一些代码来检查是否未选择重复的联系人。现在面板将不会刷新。有什么想法吗 这是检查重复数据的SSJ。对不起,如果我没有恰当地解释这一点,或者如果这个“问题”有一个非常简单的解决方案——这里完全没有 var viewPanel=getComponent("viewPanel1"); var docIDs=viewPanel.getSelectedIds(); for(i=0 ; i

我有一个dijit,它显示可用联系人的列表。选定的联系人然后显示在视图面板中,该面板通过部分刷新进行更新,直到我添加了一些代码来检查是否未选择重复的联系人。现在面板将不会刷新。有什么想法吗

这是检查重复数据的SSJ。对不起,如果我没有恰当地解释这一点,或者如果这个“问题”有一个非常简单的解决方案——这里完全没有

var viewPanel=getComponent("viewPanel1");
var docIDs=viewPanel.getSelectedIds();

for(i=0 ; i  <  docIDs.length ; i++){

    var docId = docIDs[i];

    var doc:NotesDocument = database.getDocumentByID(docId);
        // Get Contact Details from document
    var FName = doc.getItemValueString("Org_Con_FirstName");
    var LName = doc.getItemValueString("Org_Con_SurName");
    var FullName = FName + " " + LName;
    var Phone = doc.getItemValueString("Org_Con_Phone");
    var Email = doc.getItemValueString("Org_Con_Email");
    var Unid = doc.getUniversalID();

    var checkView = database.getView("oppContacts");
    var checkCollection  = checkView.getAllDocumentsByKey(sessionScope.oppKey);
    var checkCount = checkCollection.getCount();
    var counter = 0;
    if(checkCount != 0 ){
        var checkDoc = checkCollection.getFirstDocument();
        while(checkDoc!=null){
            var checkEmail = checkDoc.getItemValueString("Email")
            if(checkEmail==Email) counter = counter + 1;
            var tempDoc = checkCollection.getNextDocument();
            checkDoc.recycle();
            checkDoc = tempDoc;
        }
    }


    if(counter==0){
        var oppContact = database.createDocument();

        oppContact.replaceItemValue("Form","oppContact");
        oppContact.appendItemValue("ContactName",FullName);
        oppContact.appendItemValue("Email", Email);
        oppContact.appendItemValue("Phone", Phone);
        oppContact.appendItemValue("FullContact",Unid);
        oppContact.appendItemValue("OpportunityKey", sessionScope.oppKey);

        oppContact.save();

    }

}
var viewPanel=getComponent(“viewPanel1”);
var docIDs=viewPanel.getSelectedIds();
对于(i=0;i
尝试在脚本末尾返回true,继续使用部分刷新面板的服务器选项。如果遇到错误,则返回false

在此处输入代码
//在代码的开头 var-bResult=false

// inside if-statement : if (counter==0){ 
bResult = oppContact.save();

// at the end check bResult by setting sessionScope (using debug toolbar :-)
sessionScope.bResult = bResult;
// return true, hopefully
return bResult;
您的代码是否生成新文档?
希望这有助于…

尝试在脚本末尾返回true,继续使用部分刷新面板的服务器选项。如果遇到错误,则返回false

在此处输入代码
//在代码的开头 var-bResult=false

// inside if-statement : if (counter==0){ 
bResult = oppContact.save();

// at the end check bResult by setting sessionScope (using debug toolbar :-)
sessionScope.bResult = bResult;
// return true, hopefully
return bResult;
您的代码是否生成新文档?
希望这有帮助……

我要做的第一件事是在代码周围添加一个try/catch块,看看它是否没有抛出任何错误。它没有抛出任何错误。代码正在添加联系人,但我需要执行两次或刷新浏览器以更新视图,并且将按钮设置为“完全更新”也不起作用:-(我删除了从“var checkView=database”到“if(counter)…”的所有内容)-部分刷新有效。我放弃:-(我会检查sessionScope.oppKey包含的内容可能是空的,如果(checkEmail==Email)counter=counter+1,我也会更改这一行;{}我要做的第一件事是在代码周围添加一个try/catch块,看看它是否没有引发任何错误。它没有引发任何错误。代码正在添加联系人,但我需要添加两次或刷新浏览器以更新视图,并且将按钮设置为完全更新也不起作用:-(我删除了从“var checkView=database”到“if(counter)…”的所有内容。我放弃了:-(我将检查sessionScope.oppKey包含的内容可能是null)如果(checkEmail==Email)counter=counter+1,我还将更改此行;因此它将使用{}正在创建的文档正常,但它们不会显示在视图表中-通过部分刷新进行更新。我必须手动刷新整个页面正在创建的文档正常,但它们不会显示在视图表中-通过部分刷新进行更新。我必须手动刷新整个页面