Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/01/2008, 06:26
yazo
 
Fecha de Ingreso: abril-2003
Mensajes: 363
Antigüedad: 21 años, 8 meses
Puntos: 3
Re: Incompatibilidad con IE

He probado con esto pero:

Código HTML:
//Función Añadir linea
function addLine(id, orden, detalles, cantidad, total) {
  //Sumanos uno al contador
  cont++;
  
  tab = document.getElementById('tabla');

  //Añadimos una nueva fila
  fila = tab.appendChild(document.createElement('tr'));
  
  //Input Id
  celdaorden = fila.appendChild(document.createElement('td'));
  id = celdaorden.appendChild(document.createElement('input'));
  id.setAttribute('type',"hidden");
  id.setAttribute('name','id'+cont);
  id.setAttribute('id','id'+cont);
  id.setAttribute('value',id);
  
  //Input Orden
  orden = celdaorden.appendChild(document.createElement('input'));
  orden.setAttribute('type','text');
  orden.setAttribute('name','orden'+cont);
  orden.setAttribute('id','orden'+cont);
  orden.setAttribute('style','width:50px;');
  orden.setAttribute('value',orden);
  
  //Input detalles
  celdadetalles = fila.appendChild(document.createElement('td'));
  detalles = celdadetalles.appendChild(document.createElement('input'));
  detalles.setAttribute('type','text');
  detalles.setAttribute('name','detalles'+cont);
  detalles.setAttribute('id','detalles'+cont);
  detalles.setAttribute('style','width:100%;');
  detalles.setAttribute('value',orden);
  
  //Input Cantidad
  celdacantidad = fila.appendChild(document.createElement('td'));
  cantidad = celdacantidad.appendChild(document.createElement('input'));
  cantidad.setAttribute('type','text');
  cantidad.setAttribute('name','cantidad'+cont);
  cantidad.setAttribute('id','cantidad'+cont);
  cantidad.setAttribute('style','width:50px;');
  cantidad.setAttribute('value',cantidad);
  
  //Input tarifa
  celdatarifa = fila.appendChild(document.createElement('td'));
  tarifa = celdatarifa.appendChild(document.createElement('input'));
  tarifa.setAttribute('type','text');
  tarifa.setAttribute('name','tarifa'+cont);
  tarifa.setAttribute('id','tarifa'+cont);
  tarifa.setAttribute('style','width:100px;');
  tarifa.setAttribute('value',tarifa);
  
  //Input Total
  celdatotal = fila.appendChild(document.createElement('td'));
  total = celdatotal.appendChild(document.createElement('input'));
  total.setAttribute('type','text');
  total.setAttribute('name','total'+cont);
  total.setAttribute('id','total'+cont);
  total.setAttribute('style','width:100px;');
  total.setAttribute('value',total);
  
  //Boton Borrar
  celdaborrar = fila.appendChild(document.createElement('td'));
  borrar = celdaborrar.appendChild(document.createElement('input'));
  borrar.setAttribute('type','button');
  borrar.setAttribute('name','borrar'+cont);
  borrar.setAttribute('id','borrar'+cont);
  borrar.setAttribute('value','Borrar');
  borrar.onclick=function() {
    tab = document.getElementById('tabla');
    padre = this.parentNode.parentNode;
    tab.removeChild(padre);
    
	//Restamos unos al contador
    cont--;

    //actualizamos el contador
    document.getElementById('contador').setAttribute('value',cont);
  }
Con esto he conseguido que funcione el actualizar el contador tanto en firefox como en ie.
Ahora me da error en ie en las líneas:
id.setAttribute('type',"hidden");
borrar.setAttribute('type','button');
En firefox funcionan correctamente pero en ie falla.

Sigo sin conseguir arreglar el error "[object HTMLInputElement]", que me da tanto en ie como en firefox.

¿Sabeis como se puede arreglar?

Gracias adelantadas por vuestra ayuda.