REXML:相当于 javascript-DOM 的 .innerHTML=
有没有一种方法可以将字符串传递给 REXML::Element
,从而将字符串解析为 XML,并将找到的元素插入到目标中?
Is there a way to pass a string to an REXML::Element
in such a way that the string will be parsed as XML, and the elements so found inserted into the target?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以扩展 REXML::Element 类以包含innerHTML,如下所示。
然后您可以像在 javascript 中一样使用innerHTML(或多或少)。
You can extend the REXML::Element class to include innerHTML as shown below.
You can then use innerHTML as you would in javascript (more or less).
如果您能提供一个例子来进一步说明您的想法,那将会有所帮助。
使用 JS innerHTML,您可以一次性插入文本或 HTML,所做的更改会立即显示在 HTML 文档中。我知道如何在 REXML 中执行此操作的唯一方法是使用单独的步骤插入内容/元素和保存/重新加载文档。
要修改特定 REXML 元素的文本,您可以使用 text=() 方法。
如果您想插入另一个元素,则必须使用 add_element() 方法。
当然,然后保存更改后的 XML 文档。 ruby-doc.org/REXML/Element
It would help if you could provide an example to further illustrate exactly what you had in mind.
With JS innerHTML you can insert text or HTML in one shot and changes are immediately displayed in the HTML document. The only way I know how to do this in REXML is with separate steps for inserting content/elements and saving/reloading the document.
To modify the text of a specific REXML Elemement you can use the text=() method.
If you want to insert another element you have to use the add_element() method.
Then of course save the XML document with the changes. ruby-doc.org/REXML/Element
text()
将以字符串形式返回内部内容text()
will return the inner content as a string