Hola, despues de darle mil vueltas y sin resultado necesito de vuestra ayuda (urgetisimo claro, como siempre ..) Estoy trabajando en una lista de productos dinamica, que llama a un xml ( o un rss) . La lista tiene un titulo , una descirpcion, una imagen, un link a la web del cliente, y un icono PDF que al pinchar descarga las tarifas de ese cliente en particular. Tengo el html y un xml. Me he basado en un post que habia aqui y que se parecia muchisimo a lo que necesito. Pero tengo que adaptarlo y me encuentro con mil problemas.
Cuando se abre la pagina, necesito que ademas del titulo y la descripción, se muestre la imagen. Tambien que cuando uno clike en el link a la web del cliente se abra ese link ( ahora se muestra la imagen porque asi estaba en el ejemplo que me descargue). Y la ultima cosita, ¿como puedo hacer que el icono PDF sea un link a la descarga de la tarifa correspondiente? Vaya rollo, ya lo sé pero les agradecería muchisimo la ayuda, estoy en un aprieto de la ostia. MIL MIL GRACIAS.
Aqui va el xml:
<?xml version="1.0" standalone="yes"?><rss version="2.0">
<channel>
<noticias>
<cliente>
<titulo>cliente1</titulo>
<description>Quisque laoreet
lorem eget libero commodo porta.
Nunc in odio sed est tempus hendrerit.
Puntos de venta</description>
<url>http://www.cliente1.com</url>
<link>#</link>
<image>imagen1.jpg</image>
<image>tarifas1.pdf</tarifas>
</cliente>
<cliente>
<titulo>cliente2</titulo>
<description>Quisque laoreet
lorem eget libero commodo porta.
Nunc in odio sed est tempus hendrerit.
Puntos de venta</description>
<url>http://www.cliente2.com</url>
<link>#</link>
<image>imagen2.jpg</image>
<image>tarifas2.pdf</tarifas>
</cliente>
<cliente>
<titulo>cliente3</titulo>
<description>Quisque laoreet
lorem eget libero commodo porta.
Nunc in odio sed est tempus hendrerit.
Puntos de venta</description>
<url>http://www.cliente3.com</url>
<link>#</link>
<image>imagen3.jpg</image>
<image>tarifas3.pdf</tarifas>
</cliente>
</noticias>
</channel>
</rss>
y aqui el codigo HTML:
<script language="JavaScript" type="text/JavaScript"><!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
//-->
</script>
<script>
function Replace(totalValue,oldValue,newValue)
{
while(totalValue.indexOf(oldValue) > -1)
totalValue=totalValue.replace(oldValue,newValue);
return totalValue;
}
/* Aqui Traigo los Nodos del XML
(Parametros) TagNames:'XML Elemento' nodo:'Numero de fila de elemento' */
function getNode(TagName, node)
{
var currentNode = (node == null) ? xmlDoc.getElementsByTagName(TagName) :
items[node].getElementsByTagName(TagName);
if(currentNode.length > 0)
return currentNode[0].firstChild.nodeValue;
}
/* Cargando documento XML
(Parametros) rssFeed:'Archivo RSS' Body:'Layer para el cuerpo rss' Titulo:'Layer para el titulo rss' */
function ReadRSS(rssFeed, Body, Title)
{
rssTitle = document.getElementById(Title);
rssBody = document.getElementById(Body);
try
{
if (document.all)
{
var errorHappendHere = "Check Browser and security settings";
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
}
else
{
var errorHappendHere = "Aparentemente no se puede leer remotamente el xml via firefox, copiar el archivo en el servidor";
xmlDoc = document.implementation.createDocument("","",null) ;
}
xmlDoc.async=false;
xmlDoc.load(rssFeed);
items=xmlDoc.getElementsByTagName('cliente');
SetRSSTemplates();
}
catch(e)
{
rssTitle.innerHTML = 'Error occured';
rssBody.innerHTML = 'Thrown Error:'+e.message+"<br/>Note: "+errorHappendHere;
}
}
/* setiando el template de html */
function SetRSSTemplates()
{
if (rssBody)
{
var buffer = "";
for(var i=0; i< items.length; i++)
{
if (document.all)
{
var output = Replace(rssBody.innerHTML,"(::Link::)","javascript :mostrar('"+getNode('titulo',i)+"','"+getNode('ima ge',i)+"','"+getNode('url',i)+"')");
}
else
{
var output = Replace(rssBody.innerHTML,"%28::Link::%29","javasc ript:mostrar('"+getNode('url',i)+"')");
}
output = Replace(output,"(::Title::)",getNode('titulo',i));
output = Replace(output,"(::Description::)",getNode('descri ption',i));
output = Replace(output,"(::url::)",getNode('url',i));
output = Replace(output,"(::image::)",getNode('image',i));
buffer+=output;
}
rssBody.innerHTML = buffer;
}
if (rssTitle)
{
var output = Replace(rssTitle.innerHTML,"(::Title::)",getNode(' title'));
output = Replace(output,"(::Description::)",getNode('descri ption'));
output = Replace(output,"(::image::)",getNode('image'));
rssTitle.innerHTML = output;
}
}
function mostrar(titulo,imagen){
var v=window.open('');
v.document.open();
v.document.write('<html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/></head><body><img src="'+imagen+'" width="100" hspace="5" vspace="5" align="left" /></body></html>');
v.document.close();
}
window.onload = function()
{
ReadRSS('cerrajeriaPruebas.xml','scrollProductos', 'rssTitleTemplate');
}
</script>
<link href="css/template_cssProductos.css" rel="stylesheet" type="text/css">
<table width="613" height="314" border="0" align="left" cellpadding="0" cellspacing="0" id="contenidoProductos">
<tr>
<td width="172" height="31" align="center" valign="top" bgcolor="#D1D9DF"><img src="images/cerrajeria.jpg" name="cerrajeria" width="121" height="121" hspace="20" vspace="20" style="border: 1px solid #FFFFFF;" align="top" id="cerrajeria"></td>
<td width="10"> </td>
<td width="431" valign="middle" bgcolor="#D1D9DF">
<div id="scrollProductos" style=" width:431px; height:314px; overflow: scroll; left: 573px; top: 233px; visibility: visible; z-index: 3;">
<br/>
<img src="ICONOPDF.jpg"width="20" hspace="5" vspace="5" align="right" class="imagenProductos" /> //este es el icono de descarga de las tarifas.
<b class="titulo_productos">(::Title::)</b>
//aqui tendría que ir la imagen del XML
<br/>
<b class="descripcion_productos">(::Description::)</b>
<br/>
<a href="(::Link::)" class="descripcion_productos"><b>(::url::)</b></a>
<br/>
</div>
</td>
</tr>
</table>
</html>
mil gracias otra vez