JEditorPane 和 HTML 元素的来源
我在 Java 中的 HTMLEditorKit
和 HTMLDocument
方面仍然存在问题。我只能设置元素的内部 HTML,但无法获取它。有什么方法可以获取元素的底层 HTML 代码吗?
我的问题是,HTML 支持很差并且写得不好。该 API 不允许基本的和预期的功能。我需要更改 的
colspan
或 rowspan attribute
。 Java开发者关闭了最直接的方法:元素的属性集是不可变的。解决方法可能是获取元素的代码(例如 Hi world
)并将其替换为新的内容(例如 Hi world
)。这条路似乎也被封闭了。 (额外问题:HTMLEditorKit
有什么用处?)
I have (still) problems with HTMLEditorKit
and HTMLDocument
in Java. I can only set the inner HTML of an element, but I cannot get it. Is there some way, how to get a uderlying HTML code of an element?
My problem is, that the HTML support is quite poor and bad written. The API does not allow basic and expected functions. I need change the colspan
or rowspan attribute
of <td>
. The Java developers have closed the straightforward way: the attribute set of element is immutable. The workaround could be to take the code of element (e.g. <td colspan="2">Hi <u>world</u></td>
) and replace it with new content (e.g. <td colspan="3">Hi <u>world</u></td>
). This way seems to be closed too. (Bonus question: What's the HTMLEditorKit
good for?)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以获得所选元素的html。使用套件的 write() 方法传递元素的偏移量。但它将包含在周围的标签“”中“<身体>” ETC。
You can get the selected Element html. Use write() method of the kit passing there offsets of the Element. But it will be included with surrounding tags "<html>" "<body>" etc.
感谢您的提示,斯坦尼斯拉夫。这就是我的解决方案:
可以轻松修改此方法以获得外部 HTML(因此代码包含整个标记)。
Thanks for hint, Stanislav. That's my solution:
This method can be easilly modified to get outter HTML (so the code containing the entire tag).