0
在Outlook Web Add-In中,我試圖攔截髮送電子郵件時觸發的OnSend
事件。附件提醒後攔截OnSend事件
我在GitHub中使用這個example,它工作正常。
如果我在電子郵件正文中包含單詞「附件」,並且點擊發送按鈕,OnSend
事件首次被觸發,因此我可以對電子郵件的內容進行一些處理。然而,一段時間後,彈出一個模態窗口顯示了此消息:
附件提醒
您可能忘記附加文件。
與發送和不要發送按鈕。如果點擊發送,OnSend
事件被第二次觸發。這一次,重複相同的電子郵件處理將是無用的。所以,我正在尋找一種方法來發現第二個OnSend
事件在附件提醒之後被解僱。
有沒有辦法區分第一個和第二個OnSend
事件?
不幸的是,當OnSend事件被觸發時,我向電子郵件正文添加更多內容,這對我來說是一個問題。所以它會被添加兩次。既然您確認了這個問題,我會嘗試記住已發送的項目(使用本地存儲)以避免重複處理。另外我注意到,在附件提醒窗口中單擊**發送**按鈕後,發送了兩次「OnSend」事件(不包括附件提醒之前的第一個事件)https://stackoverflow.com/questions/45489188/onsend-fired-兩次 - 附件提醒/ 45489927?noredirect = 1#comment77976834_45489927 – Mhd
明白了。是的,那麼你確實需要提出一個解決方法。你正在考慮的一個可能會奏效。您也可以嘗試在該項目上設置一個自定義屬性,指出它已被處理,並且當再次引發事件時,首先檢查該屬性,如果設置則忽略該事件。但我不知道你的情況 - 如果用戶取消附件對話框中的發送並修改了郵件內容,會發生什麼情況 - 您需要重新處理郵件嗎? –
我喜歡自定義屬性的想法比本地存儲更好。謝謝!!!如果電子郵件正文已被修改,我必須重新進行處理並根據新的電子郵件正文插入新內容。但是,我必須忽略第一個過程(刪除第一個插入的內容)。我該如何處理這種情況? – Mhd