我正在使用e4x为我的用户生成HTML代码段,他们可以将其复制并放大粘贴到他们的博客或网站:
var xml: XML = <object>
<param name="..."></param>
<param name="..."></param>
<embed args="..."></embed>
</object>;
var html: String = xml.toXMLString();
但是,没有子元素的标记使用输出HTML字符串中较短的<embed/>
- 变体而不是<embed></embed>
来关闭,这会在将代码粘贴到例如Blogger编辑器。
有没有办法强制HTML方式关闭标签,还是有一个好的解决方法?在<embed>
和</embed>
之间添加评论似乎不起作用..
答案 0 :(得分:1)
在XML对象中表示HTML似乎不是一个好主意。 HTML-snippet只会被视为文本:你不会对它进行任何XML操作 只需将其直接构建为String。这样,它的格式完全符合您的要求,您可以包含注释,...
如果您真的想要,可以通过确保该xml元素的内容不为空来使其与XML对象一起输出单独的结束标记。你不希望文本之间有任何真正的文本,但只是一个空间就足够了。在Flex中(我不知道其他的actionscript实现)你可能不得不将XML.ignoreWhitespace设置为false以使其工作。