第一、第一个子节点 firstChild属性:
下面这个示例演示firstChild属性的使用
var myXML:XML = new XML();
var myTextArea:mx.controls.TextArea;
myXML.ignoreWhite=true;
myXML.onLoad=function(success:Boolean):Void{
if(success){
myTextArea.text+=this;
myTextArea.text+="\n\n----firstChild----\n\n";
myTextArea.text+=this.firstChild;
myTextArea.text+="\n\n-firstChild.firstChild-\n\n";
myTextArea.text+=this.firstChild.firstChild;
}else{
myTextArea.text="error";
}
}
myXML.load("goods.xml");
------------------------------------------------------------------------------------------
第二、最后一个节点 lastChild属性
var myXML:XML = new XML();
var myTextArea:mx.controls.TextArea;
myXML.ignoreWhite=true;
myXML.onLoad=function(success:Boolean):Void{
if(success){
myTextArea.text+=this;
myTextArea.text+="\n\n----lastChild----\n\n";
myTextArea.text+=this.lastChild;
myTextArea.text+="\n\n-lastChild.lastChild-\n\n";
myTextArea.text+=this.lastChild.lastChild;
}else{
myTextArea.text="error";
}
}
myXML.load("goods.xml");
---------------------------------------------------------------------------------------------------
第三、兄弟节点 nextSibling 属性
/* 思路:
先定位到XML文件下的第一个“钢笔”节点,再继续寻找其他兄弟节点。
*/
var myXML:XML = new XML();
myXML.ignoreWhite = true;
var myTextArea:mx.controls.TextArea;
myXML.onLoad = function(success:Boolean):Void {
if (success) {
//定位,用变量firstNode这个名称表示 myXML的第一个子节点,也就是首个"钢笔"节点
var firstNode = this.firstChild.firstChild;
//显示这个钢笔节点
myTextArea.text += firstNode;
//分隔符
myTextArea.text += "\n\n-------1----nextSibling--------------\n";
myTextArea.text += firstNode.nextSibling;
myTextArea.text += "\n\n--------2---nextSibling.nextSibling--------------\n";
myTextArea.text += firstNode.nextSibling.nextSibling;
myTextArea.text += "\n\n--------3---nextSibling.nextSibling.nextSibling--------------\n";
myTextArea.text += firstNode.nextSibling.nextSibling.nextSibling;
myTextArea.text += "\n\n--------4---nextSibling.nextSibling.nextSibling--------------\n";
myTextArea.text += firstNode.nextSibling.nextSibling.nextSibling.nextSibling;
} else {
myTextArea.text = "error";
}
};
myXML.load("goods.xml");
--------------------------------------------------------------------------------------------
第四、另一个兄弟节点 previousSibling
可以说previousSibling 是nextSibling的逆过程。只要把nextSibling弄懂。previousSibling就不是难题了。
var myXML:XML = new XML();
var myTextArea:mx.controls.TextArea;
myXML.ignoreWhite = true;
myXML.onLoad = function(success:Boolean):Void {
if (success) {
var lastNode = this.firstChild.lastChild;
myTextArea.text += lastNode; //定位金额
myTextArea.text += "\n\n----previousSibling----\n";
myTextArea.text += lastNode.previousSibling;
myTextArea.text += "\n\n-previousSibling.previousSibling-\n";
myTextArea.text += lastNode.previousSibling.previousSibling;
myTextArea.text += "\n\n-previousSibling * 3-\n";
myTextArea.text += lastNode.previousSibling.previousSibling.previousSibling;
myTextArea.text += "\n\n-previousSibling * 4-\n";
myTextArea.text += lastNode.previousSibling.previousSibling.previousSibling.previousSibling;
} else {
myTextArea.text = "error";
}
};
myXML.load("goods.xml");
----------------------------------------------------------------------------------------------
第五、寻找父亲:parentNode 属性
它的标准写法是 myXML.parentNode.
我们先定位一个节点,金额。然后找父节点。
var myXML:XML = new XML();
myXML.ignoreWhite = true;
var myTextArea:mx.controls.TextArea;
myXML.onLoad = function(success:Boolean):Void {
if (success) {
var fir_Node = this.firstChild.firstChild;
myTextArea.text = fir_Node.parentNode.toString();
} else {
myTextArea.text = "error";
}
};
myXML.load("goods.xml");
在本节中我们接触到了toString()函数
第六、类型的转化 toString() 函数
它的作用是把XML对象转化为字符串类型。在动态文本和很多V2组件中是无法显示XML类型节点值的,必须先把这个函数转化为文本才行。
----------------------------------------------------------------------------------------------
第七、开始创造 createlement 函数。
Flash内置的XML类不仅可以可以读取XML文档,也可以在内部创建XML对象。
createlement的标准写法是 myXML.createlement("节点值"); 如下例:
var myXML:XML=new XML();
var elem_1:XMLNode=myXML.createlement("文具类");
var elem_2:XMLNode=myXML.createlement("食品类");
var elem_3:XMLNode=myXML.createlement("饮料类");
myTextArea.text=myXML.toString();
/*这里按回车无任何显示,原因是我们创建了节点但,并没有附加到myXML对象上*/
----------------------------------------------------------------------------------------------
[1] [2] 下一页