alfinete
Power Member
teste .html
________________________________________________
teste .xslt
____________________________
teste .xsl
____________________________
pus aqui tdos os ficheiros
o que corre tudo é o teste.html
o que eu gstava de fazer e esta a dar um erro, é fazer um paging(paginação) em xsl resultante de dados xml
gostava de um help para o problema
obrigada
________________________________________________
Código:
<html>
<head>
<link rel="stylesheet" type="text/css" href="noticias.css">
<script type="text/javascript">
function loadXMLDoc(fname)
{
var xmlDoc;
// code for IE
if (window.ActiveXObject)
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation
&& document.implementation.createDocument)
{
xmlDoc=document.implementation.createDocument("","",null);
}
else
{
alert('Your browser cannot handle this script');
}
xmlDoc.async=false;
xmlDoc.load(fname);
return(xmlDoc);
}
function displayResult()
{
xml=loadXMLDoc("teste3.xml");
xsl=loadXMLDoc("teste3.xslt");
// code for IE
if (window.ActiveXObject)
{
ex=xml.transformNode(xsl);
document.getElementById("teste").innerHTML=ex;
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation
&& document.implementation.createDocument)
{
xsltProcessor=new XSLTProcessor();
xsltProcessor.importStylesheet(xsl);
resultDocument = xsltProcessor.transformToFragment(xml,document);
document.getElementById("teste").appendChild(resultDocument);
}
}
</script>
</head>
<body id="teste" onLoad="displayResult()">
</body>
</html>
teste .xslt
____________________________
Código:
<?xml version="1.0" encoding="utf-8"?>
<!--
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
xmlns:vt="http://www.viatecla.pt/" >-->
<xsl:stylesheet version="1.0" xmlns:xsl ="http://www.w3.org/1999/XSL/Transform"
xmlns:HTML ="http://www.w3.org/Profiles/XHTML-transitional">
<xsl:template match="/">
<xsl:variable name="maxItemsPage" select="2"/>
<HTML>
<HEAD>
<SCRIPT language="JavaScript">
<xsl:comment>
<![CDATA[
function displayPage(from, to)
{
//Need to set the params to $to and $from
source = new ActiveXObject("MSXM3.FreeThreaderDOMDocument");
var s = document.XSLDocument.selectSingleNode("*/xsl:template[@match='Data']//xsl:apply-templates");
var d = document.XMLDocument.selectSingleNode("Status/Data");
Table.innerHTML = d.transformNode(document.XSLDocument);
}
function sort(key)
{
var s = document.XSLDocument.selectNodes("*/xsl:template[@match ='Data']//xsl:apply-templates/@order-by");
for (var i = s.nextNode(); i != null; i = s.nextNode())
{
i.value = key;
}
var d = document.XMLDocument.selectSingleNode("Status/Data");
Table.innerHTML = d.transformNode(document.XSLDocument);
}
]]>
</xsl:comment></SCRIPT>
</HEAD>
<BODY>
<TABLE WIDTH="100%" BORDER="1" CELLSPACING="1">
<TR>
<TD colspan="3"><DIV id="Table">
<xsl:apply-templates select="Status/Data"/>
</DIV>
</TD>
</TR>
</TABLE>
<P/>
</BODY>
</HTML>
</xsl:template>
<xsl:template match="Data">
<xsl:variable name="from" select="1"/>
<xsl:variable name="to" select="2"/>
<xsl:call-template name="tableheader"/>
<xsl:apply-templates select="//Uow[position() >= $from and position() <= $to]"/>
<xsl:call-template name="pagefooter"/>
</xsl:template>
<xsl:template name="tableheader">
<TR>
<th><A href="javascript:sort('senderId')">Sender ID</A></th>
<th><A href="javascript:sort('docId')">Document Id</A></th>
</TR>
</xsl:template>
<xsl:template name="pagefooter">
<xsl:variable name="from" select="1"/>
<xsl:variable name="to" select="2"/>
<TR>
<th><a href="javascript:displayPage({$from - 2}, {$from - 1})">Back</a></th>
<th><a href="javascript:displayPage({$to + 1}, {$to + 2})">Next</a></th>
</TR>
</xsl:template>
<xsl:template match="Uow">
<tr>
<td>
<xsl:value-of select="senderId"/>
</td>
<td>
<xsl:value-of select="docId"/>
</td>
</tr>
</xsl:template>
</xsl:stylesheet>
teste .xsl
____________________________
Código:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="teste3.xslt"?>
<Status xmlns:HTML="http://www.w3.org/Profiles/XHTML-transitional">
<Data>
<Uow uuid="300">
<senderId>BNBNT-1</senderId>
<docId>1</docId>
</Uow>
<Uow uuid="345">
<senderId>BNBN</senderId>
<docId>2</docId>
</Uow>
<Uow uuid="678">
<senderId>AMZN</senderId>
<docId>3</docId>
</Uow>
<Uow uuid="910">
<senderId>EBAY</senderId>
<docId>4</docId>
</Uow>
<Uow uuid="999">
<senderId>INDUS</senderId>
<docId>5</docId>
</Uow>
</Data>
</Status>
pus aqui tdos os ficheiros
o que corre tudo é o teste.html
o que eu gstava de fazer e esta a dar um erro, é fazer um paging(paginação) em xsl resultante de dados xml
gostava de um help para o problema
obrigada