我有一個運行計時器腳本的應用程序,它在超時時點擊一個操作按鈕。操作按鈕被顯示屏隱藏:無。在動作按鈕上,我通過onClick事件對panelButtonBar進行了部分刷新。除了onClick事件根據文檔的條件設置viewScope變量的部分內容之外,這一切都很好。 viewScope變量是vsIsLocked,可以是true或false。如果值爲true,我不希望panelButtonBar刷新。我創建了一個什麼都不做稱爲dummyField一個字段,添加了以下成局部刷新的定義:有條件地在XPage上進行部分刷新
(viewScope.get("vsIsLocked")) ? "dummyField" : "panelButtonBar"
通過把dBar.info報表是由動作按鈕的onclick代碼中,我知道它按計劃運行,我也知道vsIsLocked的值從true更改爲false,但panelButtonBar不刷新。正如我所說的,如果我將條件語句取出並僅對刷新工作的panelButtonBar進行部分刷新,則條件部分刷新不會。我相信我的js是正確的。我試過了:
(viewScope.get("vsIsLocked")) ? "" : "panelButtonBar"
但是然後部分刷新似乎運行爲總刷新。
你可以用一個jsfiddle來進一步說明嗎?從一個比爾F.到另一個的問候。 –
@BillF。到另一個 - 不知道你的意思。一切都適用於條件刷新的代碼。在選擇要刷新的元素的對話框中,選擇Secfify元素ID,然後不輸入panelButtonBar並選擇小鑽石並輸入上面的js。它非常簡單vsIsLocked是true或false,如果它是真的,刷新不真實的dummyField(只是一個佔位符),如果它是false刷新panelButtonBar。我可以讓它始終在panelButtonBar上進行部分刷新,但是如果是真的,沒有理由這麼做。 –
他指的是http://jsfiddle.net/,它是測試和分享純粹的客戶端網頁代碼的好方法。由於這個特定的問題是服務器端行爲,在這種情況下不適用,但它是一個很好的工具。 –