先来段代码
//测试
var xml1:XML =
<menu>
<menuitem code="a" lv="1"/>
<menuitem code="b" lv="2"/>
<menuitem code="c" lv="3"/>
<menuitem code="d" lv="2" />
<menuitem code="e" lv="2" />
<menuitem code="f" lv="2" />
<menuitem code="g" lv="2" />
</menu>;
var xml2:XML = new XML("<menu>" + xml1.menuitem.(@lv == 1) + "</menu>");
var xml3:XML = new XML("<menu>" + xml1.menuitem.(@lv == 2) + "</menu>");
var xml4:XML = new XML("<menu>" + xml1.menuitem.(@lv == 3) + "</menu>");
trace("////////////////////////////");
trace("xml2 = " + xml2);
trace("////////////////////////////");
trace("xml3 = " + xml3);
trace("////////////////////////////");
trace("xml4 = " + xml4);
大家认为它应该输出什么?
实际的结果是:
////////////////////////////
xml2 =
////////////////////////////
xml3 = <menu>
<menuitem code="b" lv="2"/>
<menuitem code="d" lv="2"/>
<menuitem code="e" lv="2"/>
<menuitem code="f" lv="2"/>
<menuitem code="g" lv="2"/>
</menu>
////////////////////////////
xml4 =
怎么会是这个样子?难道1和3不行,只有2才行?或者说只有一条的数据不能匹配?为啥呢?把 new xml换成<menu/>.appendChild(xxx) 也不行!
加断点调试发现,确实匹配到了,但就是没显示出来!
后来终于明白:
这里用+连接xml就自动调用了
toString()方法。由于单条xml的toString()输出的是空串(就是它的文本子节点),而多条xml也就是xmllist的toString()输出的是所有标签,所以导致了这个结果。
而要让xml输出标签需要用
toXMLString()方法
改成 new XML("<menu>" + xml1.menuitem.(@lv == 1).toXMLString() + "</menu>");
分享到:
相关推荐
flex 的xml操作xml操作xml操作xml操作xml操作xml操作xml操作xml操作
flex解析xml
flex读取xml文件的数据的三种方式及其比较
flex 操作xml 实现增删改查flex 操作xml 实现增删改查flex 操作xml 实现增删改查flex 操作xml 实现增删改查flex 操作xml 实现增删改查
使用httpService通过xml传递对象的时候,用于flex端解析xml的实例。
FLEX操作XML&JSON,是一篇翻译过来的文章.原文是INFOQ上的一篇文章.原文地址为: http://www.infoq.com/articles/flex-xml-json
Flex与JSON及XML的互操作,一篇Info的文章。
Flex之URLLoader加载XML 使用URLLoader加载XML
flex中经常需要xml格式的文件。通过后台asp.net的处理可以将数据库中读取的文件转化为xml格式。这是再传递给前端的flex中的tree控件作为数据源。
flex解析xml实例,可读取xml标签来获取信息,并附表情
这是使用flex解析xml文件,并将xml文件的内容作为ComboBox下拉列表的数据提供源
通过Httpserver与读取本地XML文件
flex 读XML 写XML 并保存为xml文件,由图生成Xml文件,由XMl文件生成图
flex读取xml乱码的解决方法
Flex读取XML不刷新问题
Ajax struts2 xml flex Ajax struts2 xml flex Ajax struts2 xml flex Ajax struts2 xml flex Ajax struts2 xml flex Ajax struts2 xml flex
flex 解析xml文件,利用httpservice读取xml文件,按要求过滤字符串,获取对应的值
Flex读取xml文件 几种方法Flex读取xml文件 几种方法Flex读取xml文件 几种方法
Flex加载xml数据三种方式:HTTPService XMLLoader XML类
Flex操作XML实现增删改查.pdf