如何使用e4x生成的XML关闭HTML方式的元素?

时间:2009-11-03 12:29:10

标签: actionscript-3 e4x

我正在使用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>之间添加评论似乎不起作用..

1 个答案:

答案 0 :(得分:1)

在XML对象中表示HTML似乎不是一个好主意。 HTML-snippet只会被视为文本:你不会对它进行任何XML操作 只需将其直接构建为String。这样,它的格式完全符合您的要求,您可以包含注释,...

如果您真的想要,可以通过确保该xml元素的内容不为空来使其与XML对象一起输出单独的结束标记。你不希望文本之间有任何真正的文本,但只是一个空间就足够了。在Flex中(我不知道其他的actionscript实现)你可能不得不将XML.ignoreWhitespace设置为false以使其工作。