You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Outlook监听插件中,点击通知消息超链接能否调用JS函数?

解决Office通知消息点击触发自定义JS函数的问题

要实现仅点击通知中的「Show Addin」链接时调用指定JS函数,需要调整通知消息的动作配置,具体操作如下:

核心修改点

  • 将actionType从ShowTaskPane改为ExecuteFunction:ShowTaskPane仅用于打开预设任务窗格,而ExecuteFunction是专门触发自定义JavaScript函数的动作类型。
  • 添加functionName字段:指定点击链接后要调用的函数名称。
  • 确保contextData为合法JSON字符串:若需传递参数,需避免语法错误。

修改后的代码示例

// 定义点击链接后执行的自定义函数
function handleShowAddinClick(event) {
  // 编写你的业务逻辑
  console.log("通知链接已点击", event.contextData);
  // 示例:打开自定义弹窗或任务窗格
  Office.context.ui.displayDialogAsync('https://your-addin-page-url', { height: 60, width: 80 });
}

var criteriaChangeMessage = {
  type: Office.MailboxEnums.ItemNotificationMessageType.InsightMessage,
  message: "会议条件已发生变更。",
  icon: "Icon.80x80",   
  actions: [
    {
      actionText: "Show Addin",
      actionType: Office.MailboxEnums.ActionType.ExecuteFunction,
      functionName: "handleShowAddinClick", // 关联自定义函数
      contextData: '{"criteria": "updated"}' // 可选:传递自定义参数
    },
  ],
};

Office.context.mailbox.item.notificationMessages.replaceAsync("action", criteriaChangeMessage); 

注意事项

  • 自定义函数(如handleShowAddinClick)需处于Office可访问的作用域,建议放在全局作用域或Office.initialize回调内。
  • 若需打开任务窗格,可在自定义函数中通过Office.context.ui.displayDialogAsync或Office.context.mailbox.item.displayFormPageAsync等API实现,完全控制点击后的行为。

内容的提问来源于stack exchange,提问作者user19568803

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 23:13:13