js操作dom(3)

<script type="text/javascript" src="sg_share.js"></script>
<script type="text/javascript">
    
var xml=sg.xmlDocument();
    xml.load(
"XmlFeedbackTemplate.xml");
    
var ColumnsNode=xml.selectSingleNode("Schema/Summary/Columns");
    
var RowsNode = xml.selectSingleNode("Schema/Rows");
    
var row=xml.createElement("Row");

    
for(var i=0,j=ColumnsNode.childNodes.length;i<j;i++)
    
{
        
//以下两者皆可
        //alert(ColumnsNode.childNodes[i].attributes[0].value);
        //alert(ColumnsNode.childNodes[i].getAttribute("ColumnName"));
        row.setAttribute(ColumnsNode.childNodes[i].getAttribute("ColumnName"),i);
        
    }

    RowsNode.appendChild(row);
    
    
//定位Row的父节点,然后通过childNodes访问
    for(var i=0,j=RowsNode.childNodes[0].attributes.length;i<j;i++)
    
{
        alert(RowsNode.childNodes[
0].attributes[i].value);        
    }


    
//或者直接定位到Rows的子节点
    var rowNode=xml.selectSingleNode("Schema/Rows/Row");
    
for(var i=0,j=rowNode.attributes.length;i<j;i++)
    
{
        alert(rowNode.attributes[i].value);        
    }

</script>


xml参考上一篇文章!
注意一点:添加新元素Row时,先createElement

 节点的查找:
//查找含有某个属性的节点
 var findNode=xml.selectSingleNode("Schema/Rows/Row[@IndexId='12']");
 alert(findNode.getAttribute("指标分类"))

如果是查找符合要求的元素,要去掉@,更多用法请参考xpath相关文档

posted @ 2008-04-29 13:43  落叶潇潇雨  阅读(185)  评论(0编辑  收藏  举报