office-js - office-js - 如何从 ClientResult 获取 HtmlElement
问题描述
我正在使用 office-js 和 office-ui-fabric-react 编写一个 MS Word 插件。一个要求是在文档中搜索某些文本,向提出问题的用户显示一个对话框,然后根据响应替换文本。
我可以使用通配符成功搜索文档,我可以为静态按钮成功显示一个弹出窗口(教学气泡或标注,它们似乎都是使用对话框 API 的包装器),但是将弹出窗口附加到找到的文本是一部分我正在寻找的谜题。
搜索返回 Word.RangeCollection,它是 Word.Range 的数组。getHtml() 方法返回 OfficeExtension.ClientResult。从中您可以获得只是文本的值,但我需要实际的 HtmlElement。
也许我的方法是错误的。我对任何替代解决方案持开放态度。
解决方案
如果您真的想要在找到的单词旁边有一个对话框,我认为没有任何方法可以做到这一点。作为替代方案,我认为您可能有一个功能可以突出显示找到的单词,然后在任务窗格中显示“您想要……”提示。您也可以使用 Dialog API 获得提示,但您无法控制对话框出现的位置,它可能会覆盖突出显示的文本。
推荐阅读
- python - 根据列值从单个文件生成多个文件
- c# - 通过 .NET 保护 Excel VBProject
- java - 使用带有 Volley 的 Recyclerview 不能在片段中工作
- android - 使用 FFMPeg 编码器库时 Android apk 文件太大
- html - html - 用文本替换输入单选
- javascript - 当一个函数中有两个类时会出现这个问题
- laravel - 在 laravel 中验证数组
- javascript - sass 文件上的 CSS 转换和动画不起作用
- nlp - 类型对象“DataFrame”没有属性“稀疏”
- javascript - 使用 aws-amplify 作为身份验证的 PrivateRoute 功能组件