Foros del Web » Programando para Internet » Javascript »

Error <TR ID con Firefox , IE perfecto...

Estas en el tema de Error <TR ID con Firefox , IE perfecto... en el foro de Javascript en Foros del Web. Muy buenas os comento: REsulta que tengo una función que hace aparecer y desaparecer las filas de la Tabla, y según pulse en un check ...
  #1 (permalink)  
Antiguo 15/03/2010, 04:56
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Error <TR ID con Firefox , IE perfecto...

Muy buenas os comento:
REsulta que tengo una función que hace aparecer y desaparecer las filas de la Tabla, y según pulse en un check box la fila desapare... La funcionalidad va perfectamente en IE y Firefox, y lo he hecho ocultando y mostrando según la ID del TR, lo malo es que en FIrefox la maquetación se desordena totalmente y no sé que hacer... Al quitar el atributo ID del TR en firefox sale bien maquetado pero claro ya no puedo trabajar con ella al perder el ID... Necesito que funcione bien en ambos navegadores... Muchas gracias por adelantado , un saludo
  #2 (permalink)  
Antiguo 15/03/2010, 05:45
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años
Puntos: 126
Respuesta: Error <TR ID con Firefox , IE perfecto...

Hola

A ciegas, ¿te has planteado usarDom?

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 15/03/2010, 06:13
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

Cita:
Iniciado por Adler Ver Mensaje
Hola

A ciegas, ¿te has planteado usar[URL="http://www.syntaxerror.es/2007/01/22/trabajar-con-dom-y-javascript-desde-firefox-e-internet-explorer/"]Dom[/URL]?

Suerte
Usar DOM es crear la tabla por medio de javascript para que cada navegador lo interprete a su manera no?Aunque me he metido en la página y he leido Explicame porfavor...
Un saludo y gracias
  #4 (permalink)  
Antiguo 15/03/2010, 08:21
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años
Puntos: 126
Respuesta: Error <TR ID con Firefox , IE perfecto...

Hola

No se que quieres que te explique, a mi entender está bastante bien explicado. Aquí tienes otra ejemplo que te será más sencillo de adaptar

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #5 (permalink)  
Antiguo 15/03/2010, 08:31
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

Cita:
Iniciado por Adler Ver Mensaje
Hola

No se que quieres que te explique, a mi entender está bastante bien explicado. [URL="http://www.telefonica.net/web2/blas-mar/vertabla.html"]Aquí tienes otra ejemplo que te será más sencillo de adaptar[/URL]

Suerte
Bueno no sé muy bien tampoco lo que me quieres enseñar porque yo la función de ocultar filas y demás la sé hacer, lo que no entiendo es porqué el TR sale mal maquetado y mal mostrado cuando es el firefox...
Es decir tengo :
<table>
<tr id="IDdelTR">
<td>
Lo que muestro aquí no sale bien maquetado
</td>
</tr>
</table>
function cambia(IDdelTR)
{
document.getElementById('IDdelTR').style.display = "none";

}
  #6 (permalink)  
Antiguo 15/03/2010, 08:44
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años
Puntos: 126
Respuesta: Error <TR ID con Firefox , IE perfecto...

Hola

Lo que quiero que veas es que el tr no necesita una id. Revisa el script y verás que lo que ocurre es que el tr pasa a none

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #7 (permalink)  
Antiguo 15/03/2010, 08:56
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: Error <TR ID con Firefox , IE perfecto...

Por lo general si algo funciona con IE y no funciona con Firefox es por que no estás usando una función estándar sino una función javascript del IE (y que posiblemente no puedan quitar porque si no se les colapsarían todos los sitios diseñados para IE).

Basarse en funciones de IE es muy negativo. Por lo general se hace una versión del código compatible en los navegadores generales, y lo máximo compatible en IE, y luego se aplican modificaciones del código para aceptar los caprichos de IE.

En cuanto a esto, si deberías irte a DOM, pero no por que sea capricho, sino por que es el estándar ahora y será el estándar mañana (ya que hoy en día no está totalmente implementado, por ejemplo Opera no entiende el comando de eliminar objetos).

Lo que Adler quiere decir es que no necesitas acceder al objeto mediante getElementsById ya que cone l DOM puedes entrar directamente a cualquier objeto siguiendo el árbol de elementos. Y si no te sale bien maquetado es porque hay algo mal. Prueba con esto (que es DOM):

Código Javascript:
Ver original
  1. td = document.getElementById('IDdelTR').firstChild; // esto llama al primer hijo del TR
  2. while(td != document.getElementById('IDdelTR').lastChild){ //creo que hay una forma
  3. //mejor de hacer esto pero ahora no me acuerdo.
  4.  td.style.display = 'none';
  5. }
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it

Última edición por AnesGy; 15/03/2010 a las 09:02
  #8 (permalink)  
Antiguo 15/03/2010, 09:00
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

Lo siento Adler creo que no me entiendes...
no es que no aparezca el TR, si no que si le pongo una ID al TR, para luego poder trabajar con el, poder cambiarle la class del css por ejemplo, se me apiña toda la informacíon que hay dentro del TR y se me va la tabla a hacer puñetas... En Internet explorer no me pasa...
Este es mi script dentro de una tabla :
<tr>

<script>
for (i=1;i<4;i++)
{

document.write("<tr id='LineaMotivoAceptacionAnalista"+i+"' style='display:block'>");
document.write("<td colspan=2 class='invertir'>");
document.write("<input type='checkbox' onclick='cambiaEstilo(\"LineaMotivoAceptacionAnali sta"+i+"\");' class='input01' name='CheckMotivo"+i+"' >");
document.write("AA ");
document.write("0"+i+" ");
document.write("&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs p;&nbsp;&nbsp;");
document.write(MotivosAceptacionAnalista(i));
document.write("<td/>");
document.write("<tr/>");
}
</script>

</td>
</tr>
  #9 (permalink)  
Antiguo 15/03/2010, 09:06
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

aquí te pego un pantallazo:
http://subirimg.com/?v=duda.png
  #10 (permalink)  
Antiguo 15/03/2010, 16:12
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 15 años, 7 meses
Puntos: 19
Respuesta: Error <TR ID con Firefox , IE perfecto...

Cita:
Lo siento Adler creo que no me entiendes...
no es que no aparezca el TR, si no que si le pongo una ID al TR, para luego poder trabajar con el, poder cambiarle la class del css por ejemplo, se me apiña toda la informacíon que hay dentro del TR y se me va la tabla a hacer puñetas... En Internet explorer no me pasa...
Este es mi script dentro de una tabla :
Repito: Lo que Adler quiere decir es que no necesitas acceder al objeto mediante getElementsById ya que cone l DOM puedes entrar directamente a cualquier objeto siguiendo el árbol de elementos. Y si no te sale bien maquetado es porque hay algo mal.

Y luego si te proponen una solución al menos muestra interés.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #11 (permalink)  
Antiguo 16/03/2010, 02:57
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

Siento si mis respuestas transmiten falta de interés, en serio no es mi intención... Así que perdón por el mal entendido... Mil gracias a los dos, me habeis resuelto el problema... Empezaré a trabajar con DOM que es realmente interesante y potente..
Puede haber muchas soluciones y todas ellas válidas...
Muchísimas Gracias por vuestra ayuda
  #12 (permalink)  
Antiguo 16/03/2010, 10:15
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

Tengo otra cuestión:
Estoy intentando usar DOM para saber el ID de las tablas...
Me gustaría saber de que manera puedo recorrer todas las tablas existentes en el docuento y cojer su ID ...
Estoy haciendo esto pero no me sale nada...
A ver si os ocurriera algo...
Mil gracias por adelantado...
var ListaTablas = document.getElementsByTagName("Table");

for (var i = 0; i < ListaTablas.length; i++){

alert("dentro-->" + ListaTablas[i].getNamedItem("id").value);
alert("dentro-->" + ListaTablas[i].attributes.item("id").nodeValue);
alert("dentro-->" + ListaTablas[i].attributes.getNamedItem("id").nodeValue);

}
  #13 (permalink)  
Antiguo 17/03/2010, 07:27
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años
Puntos: 126
Respuesta: Error <TR ID con Firefox , IE perfecto...

Hola

Casi que lo has hecho

Código Javascript:
Ver original
  1. var ListaTablas = document.getElementsByTagName("Table");
  2.  
  3. for (var i = 0; i < ListaTablas.length; i++){
  4.  
  5. alert("dentro-->" + ListaTablas[i].id;
  6.  
  7.  
  8. }

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #14 (permalink)  
Antiguo 17/03/2010, 08:34
 
Fecha de Ingreso: marzo-2004
Mensajes: 35
Antigüedad: 20 años, 9 meses
Puntos: 0
Respuesta: Error <TR ID con Firefox , IE perfecto...

Cita:
Iniciado por Adler Ver Mensaje
Hola

Casi que lo has hecho

Código Javascript:
Ver original
  1. var ListaTablas = document.getElementsByTagName("Table");
  2.  
  3. for (var i = 0; i < ListaTablas.length; i++){
  4.  
  5. alert("dentro-->" + ListaTablas[i].id;
  6.  
  7.  
  8. }

Suerte
Mil gracias¡¡¡ Que fácil era joder¡ xDDD

Etiquetas: firefox, perfecto
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:29.