2015-11-05 43 views
2

Code sampleOffice.EventType.DocumentSelectionChanged(在Excel中)在所有的Web瀏覽器

我試圖在Excel的在線文檔添加DocumentSelectionChanged事件處理無法正常工作(在所有瀏覽器進行測試)。創建此事件最近15天失敗。

請幫我在這裏

PS:同樣的事件在Excel 2013桌面環境中工作的罰款

Office.context.document.addHandlerAsync(Office.EventType.DocumentSelectionChanged, function(eventArgs) { 
    console.log(eventArgs); 
}, function(asyncResult) { 
    console.log(asyncResult); 
}); 

OSF.DDA.AsyncResult {value: undefined, status: "failed", error: OSF.DDA.Error}error: OSF.DDA.Errorcode: 5001message: "An internal error has occurred."name: "Internal Error"proto: OSF.DDA.Errorconstructor: (n,t,i)proto: Objectstatus: "failed"value: undefined__proto__: OSF.DDA.AsyncResultconstructor: (n,t)proto: Object

這裏的鏈接,以測試在http://aka.ms/R2yi5b

回答

1

感謝您的耐心。我很高興地告訴您,此修復程序已部署,現在可在所有Web瀏覽器上運行。再次感謝您提交反饋。

乾杯, 天空

1

更新(十一月2015年6月,下午):

在進一步調查中,看起來有 Excel Online中的一個已知錯誤,導致此問題。迴歸被注意到並且在幾周前已經被修復,但是修復還沒有達到所有端點(這就解釋了爲什麼有些人會看到它,而其他人,包括我自己在內)沒有。我們正在研究如何加快修補程序的發佈。

我們將在修補程序通過系統時保持此線程更新。



原來的答覆(2015年11月6日,上午):

我剛剛試了一下,我不看到失敗。

但我注意到的一件事是,共享鏈接上的代碼有一個錯誤。 addHandlerAsync的語法是首先接受事件類型,然後是處理程序,然後是回調函數來報告事件處理是否成功。在共享項目的情況下,它看起來像是假設第二個參數是成功處理程序,第二個參數是失敗處理程序(?)。相反,對於最後一個參數,您應該檢查asyncStatus.status以檢查成功狀態。

(function() { 
    'use strict'; 

    // The initialize function must be run each time a new page is loaded 
    Office.initialize = function(reason) { 
     $(document).ready(function() { 
      app.initialize(); 
      addDocumentHandler(); 
     }); 
    }; 

    function addDocumentHandler() { 
     Office.context.document.addHandlerAsync(
      Office.EventType.DocumentSelectionChanged, 
      eventHandler, 
      function(asyncResult) { 
       if (asyncResult.status == "succeeded") { 
        app.showNotification("Success", "Error handler was added"); 
       } else { 
        app.showNotification("Error setting event: ", JSON.stringify(asyncResult)); 
       } 
      } 
     ); 

     function eventHandler(eventArgs) { 
      Office.context.document.getSelectedDataAsync(Office.CoercionType.Text, function(asyncResult) { 
       if (asyncResult.status == "succeeded") { 
        app.showNotification("Value of selection: ", asyncResult.value); 
       } else { 
        app.showNotification("Error", "Cannot read selection value"); 
       } 
      }); 
     } 
    } 
})(); 

我嘗試使用Office API Tutorial App以及「SelectionChanged」教程。那裏一切正常。你可以試試嗎?

enter image description here

〜邁克爾Zlatkovsky,在Office擴展團隊開發,MSFT

+0

任何更新。我來自印度,仍然看到這個問題。有沒有解決辦法? – user1400898

+0

我也在美國測試過。這是失敗 – user1400898

+0

我今天測試。請參閱下面的屏幕截圖.http://i.stack.imgur.com/hfJSA.png – user1400898