2012-08-29 59 views
0

我有一個簡單的問題:部分更新...爲什麼需要2次刷新才能看到更改?

我有一個viewPanel中有我的觀點,我有3個按鈕(操作按鈕)命名

  • REMOVE ENTRY
  • 標記爲未讀
  • 標記爲已讀

每3個動作執行一次部分更新我的視圖後SSJS例程

  • 刪除條目:調用一個簡單的SSJS doc.remove(true);,但是我的ViewPanel在刷新這個動作後顯示條目(但是如果你執行另一個局部刷新,條目不能正確顯示到ViewPanel中)
  • MARK READ:調用一個簡單的SSJS document1.getDocument()。markRead ();並在按鈕事件處理程序的部分刷新後正常工作!
  • MARK UNREAD:調用一個簡單的SSJS document1.getDocument()。markUnread();但我有相同的問題,行動REMOVE ENTRY(在事件處理程序自動部分刷新的按鈕後,我沒有看到任何改變到ViewPanel中...我需要執行另一個部分更新後......我看到未加入的條目)

有人有任何建議嗎?

+1

tnx你每個亨裏克勞斯滕,我已經更新我的問... –

回答

1

我曾經遇到類似的問題。我沒有說我找到的解決方案是好的,但至少它爲我工作。

您正在執行的viewPanel中,在事件處理中嘗試把這個代碼的每一個動作完成之後:

<xp:this.onComplete><![CDATA[XSP.partialRefreshGet("#{id:viewPanel1}", { 
    onComplete: function() { 
     // 
    } 
});]]></xp:this.onComplete> 

這將刷新視圖面板,一旦你的行動得到完成。

相關問題