绿豆.Net

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

//***********************************************************************************
// 创建结点
//***********************************************************************************
function CreateNode(xml)
{
    var xmlNode = XDocument.CreateDOM();
    xmlNode.loadXML(xml);
    return xmlNode.documentElement;
}

//***********************************************************************************
// 清空重复表 
// curNode为当前重复表路径,curGroupNode为当前重复表父结点路径
//
// var curNode = XDocument.DOM.selectSingleNode("//my:列表");
// var curGroupNode = XDocument.DOM.selectSingleNode("//my:组");
// removeAll(curNode,curGroupNode);
//***********************************************************************************
function removeAll(curNode,curGroupNode)
{
 while(curNode!=null)
 {
     var temp = curNode;
     curNode = curNode.nextSibling;
    
     curGroupNode.removeChild(temp);
 }
}

//***********************************************************************************
// 添加子结点
// groupNode 为添加结点的父结点,xml为添加结点的xml数据
//
// var curGroupNode = XDocument.DOM.selectSingleNode("//my:组");
// appendNode(curGroupNode,xml);
//***********************************************************************************
function appendNode(groupNode,xml)
{
    var xmlDOM = XDocument.CreateDOM();
   
    xmlDOM.loadXML(xml);
 groupNode.appendChild(xmlDOM.documentElement);
}

//***********************************************************************************
// 排序
//***********************************************************************************
function pListOrder(xml)
{
    var xmlDOM = XDocument.CreateDOM();
    var xslDOM = XDocument.CreateDOM();
    var xsl = "<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>";
    xsl += "<xsl:template match='/'><IDList xmlns=''><MaxPage>1</MaxPage>";
    xsl += "<xsl:for-each select='IDList/ID'><xsl:sort select='.'/>";
    xsl += "<ID><xsl:value-of select='.'/></ID>";
    xsl += "</xsl:for-each></IDList></xsl:template></xsl:stylesheet>";

    xmlDOM.loadXML(xml);
    xslDOM.loadXML(xsl);

    xmlDOM.loadXML(xmlDOM.transformNode(xslDOM));
    return xmlDOM.documentElement.xml;
}

//***********************************************************************************
// xml重整并排序(xsl自行修改)
//
// sortby为排序字段,order-type为升序或降序["descending" | "ascending"]
// data-type为数据类型["text" | "number" | "qname"]
//***********************************************************************************
function xmlOrder(xml,orderby,data-type,order-type)
{
    var xmlDOM = XDocument.CreateDOM();
    var xslDOM = XDocument.CreateDOM();
    var xsl = "<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>";
    xsl += "<xsl:template match='/'><结果>";
    xsl += "<xsl:for-each select='结果/列表'>
    xsl += "<xsl:sort select='" + orderby + "' data-type='" + data-type + "' order='" + order-type + "'/>";
    xsl += "<列表><获奖时间><xsl:value-of select='获奖时间'/></获奖时间>";
    xsl += "<奖项><xsl:value-of select='奖项'/></奖项>";
    xsl += "<等第><xsl:value-of select='等第'/></等第>";
    xsl += "<班级姓名><xsl:value-of select='班级姓名'/></班级姓名>";
    xsl += "<指导老师><xsl:value-of select='指导老师'/></指导老师>";
    xsl += "</列表></xsl:for-each></结果></xsl:template></xsl:stylesheet>";

    xmlDOM.loadXML(xml);
    xslDOM.loadXML(xsl);

    xmlDOM.loadXML(xmlDOM.transformNode(xslDOM));
    return xmlDOM.documentElement;
}

posted on 2009-03-06 11:16  杜军  阅读(178)  评论(0)    收藏  举报