我将一些表格显示为带有 JTextPane 的 HTML 代码(由 Freemarker 模板呈现)。我在这个 HTML 输出中还有一些 HTML 链接,可用于与表的值进行交互(例如“删除一行”之类的东西)。目前,我总是在每次更改时重新创建整个 HTML 输出,并将 JTextPane 中的整个文档替换为新文档。这变得非常慢,当我这样做时,JTextPane 总是改变滚动位置。
是否可以在运行时仅更改部分 HTML 代码而不替换整个文档?在真正的浏览器中,我会使用 DOM 并执行类似 document.getElementById("price").innerHTML = "$123.44" 之类的操作。JTextPane 中的 HTMLDocument 是否可能出现类似的情况?