Código HTML:
Ver original
<div style="position:relative;z-index:10;width:600px;padding:10px;" id="mostrarprecios" name="mostrarprecios"> <div class="contabla"> <div class="confila"> </div> </div> <div class="contabla"> <div style="background-color: rgb(245, 245, 245);" class="confila" id="9517" onmouseover="javascript:color(this.id,1);" onmouseout="javascript:color(this.id,2);"> <div class="concelda anchoi"> </div> <div class="concelda anchoa"> </div> </div> </div> <div style="display: table-row;" class="ainfo" id="ainfo0"> <br> <div class="contabla"> <div class="confila"> </div> <div class="confila"> </div> <div class="confila"> </div> <div class="confila"> </div> <div class="confila"> </div> </div> </div>
con este codigo asp utilizando javascript:
Código ASP:
Ver original
var consulta = "select TOP 20 c.clave, c.codigo, c.unidad, c.resumen, c.precio, c.fecha, c.tipo, t.texto "; consulta += "from precioc AS c INNER JOIN preciot AS t ON c.codigo = t.codigo "; consulta += "where c.codigo LIKE \'D_______\' "; consulta += "and c.resumen LIKE \'%" + vcolu + "%\' "; consulta += "COLLATE SQL_LATIN1_GENERAL_CP1_CI_AI "; consulta += "order by c.codigo, c.resumen ASC" consulSE(); // Ejecutamos la CONSULTA. // var respuestas = dato; dato = ''; // 2. Mostramos las respuestas encontradas para la búsqueda realizada. // if ( !respuestas == 0 || !respuestas == null || !respuestas == undefined || !respuestas == "" || !respuestas == " " ) { %> <div class="contabla"> <div class="confila"> <div class="concelda anchoc">Codigo</div> <div class="concelda anchod">Descripción</div> <div class="concelda anchop">Precio</div> <div class="concelda anchou">Unidad</div> <div class="concelda anchoi"> </div> <div class="concelda anchoa"> </div> </div> </div> <% for (i=0;i<respuestas.length;i++) { var importela = respuestas[i][4] * 1 * ( 1 + igag + ibee ); %> <div class="contabla"> <div class="confila" id="<%=respuestas[i][0]%>" onMouseOver="javascript:color(this.id,1);" onMouseOut="javascript:color(this.id,2);"> <div class="concelda anchoc"><%=respuestas[i][1]%></div> <div class="concelda anchod"><%=respuestas[i][3]%></div> <div class="concelda anchop"><%=formatNumber(importela)%></div> <div class="concelda anchou"><%=respuestas[i][2]%></div> <div class="concelda anchoi"> <a href="#" onClick="javascript:abrei('<%='ainfo' + i%>','<%='aimage' + i%>');"><img id="<%='aimage' + i%>" src="http://www.presupueston.com/images/precios/bajar.png" /></a> </div> <div class="concelda anchoa"> <a href="#" onClick="javascript:agregarPartida('<%=respuestas[i][1]%>','<%=respuestas[i][3]%>','<%=formatNumber(importela)%>','<%=respuestas[i][2]%>');"><img id="<%='apartida' + i%>" src="http://www.presupueston.com/images/precios/apartida.png" /></a> </div> </div> </div> <div class="ainfo" id="<%='ainfo' + i%>"> <a class="derecha" href="#" onClick="javascript:var capaio = document.getElementById('<%='ainfo' + i%>');capaio.style.display = 'none';document.getElementById('<%='aimage' + i%>').src = 'http://www.presupueston.com/images/precios/bajar.png';"><img id="<%='aimage' + i%>" src="http://www.presupueston.com/images/precios/cerrar.png" /></a> <span><%=respuestas[i][7]%></span> <br /> <% var consulta = "select d.clave, d.codigo, d.concepto, d.rendimiento, c.unidad, c.resumen, c.precio "; consulta += "from preciod AS d INNER JOIN precioc AS c ON d.concepto = c.codigo "; consulta += "where d.codigo = \'" + respuestas[i][1] + "\' "; consulta += "order by d.clave, d.concepto ASC" consulSE(); // Ejecutamos la CONSULTA. // var epartida = dato; dato = ''; if ( !epartida == 0 || !epartida == null || !epartida == undefined || !epartida == "" || !epartida == " " ) { %> <div class="contabla"> <div class="confila"> <div class="concelda">Elemento</div> <div class="concelda">Cantidad</div> <div class="concelda">Unidad</div> <div class="concelda">Concepto</div> <div class="concelda">Precio</div> <div class="concelda">Importe</div> </div> <% var sucodi = 0; var eimporte = 0; var eprecio = 0; for (j=0;j<epartida.length;j++) { if ( !epartida[j][2] == String("%CI") ) { sucodi += ( epartida[j][3] * epartida[j][6] ); eimporte = epartida[j][3] * epartida[j][6]; eprecio = epartida[j][6]; } else { eprecio = sucodi; eimporte = sucodi * epartida[j][3]; } %> <div class="confila"> <div class="concelda"><%=epartida[j][2]%></div> <div class="concelda"><%=formatNumber(epartida[j][3])%></div> <div class="concelda"><%=epartida[j][4]%></div> <div class="concelda"><%=epartida[j][5]%></div> <div class="concelda"><%=formatNumber(eprecio)%></div> <div class="concelda"><%=formatNumber(eimporte)%></div> </div> <% } %> </div> <% } else { %> <p>Esta partida no tiene detalle de elementos de coste</p> <% } %> </div> <% } } else { %> No hay partidas que se correspondan con la consulta, utiliza una sola palabra. <% }
Llevo todo el día dando vueltas y no termino de verlo, pero creo que viendolo con claridad se puede ver al vuelo:
- Por un lado no recorre todos los elementos del primer for, solo el primero elemento.
- Este if no me funciona: if ( !epartida[j][2] == String("%CI") ), cuando debería por que el valor %CI se muestra por pantalla tal cual.
gracias, un saludo.