¿Por qué este javascript 'addRow' no funciona en IE?

Tengo el siguiente javascript que agrega una nueva fila al final de una tabla.

Funciona bien en Firefox, pero no funciona en IE (versión 8).

No hay errores visibles, por lo que puedo decir.

¡Cualquier idea es muy útil!

function addRow() { // locate the last row in the table var table = document.getElementById("approversTable"); var rows = document.getElementsByTagName("tr"); var rowToClone; for (var i=0; i<rows.length; i++) { if (rows[i].id != "") { rowToClone = rows[i]; } } // clone the row var clone = rowToClone.cloneNode(true); var rowId = Math.floor(Math.random()*100000); clone.id = rowId; // add the new row to the table table.appendChild(clone); } 

One Solution collect form web for “¿Por qué este javascript 'addRow' no funciona en IE?”

Debe seleccionar el elemento tbody de la tabla en lugar de la tabla directamente.

  function addRow() { var table = document.getElementById("approversTable"); var tbody = table.tbodies[0]; var rows = document.getElementsByTagName("tr"); var rowToClone; for (var i=0; i<rows.length; i++) { if (rows[i].id != "") { rowToClone = rows[i]; } } // clone the row var clone = rowToClone.cloneNode(true); var rowId = Math.floor(Math.random()*100000); clone.id = rowId; // add the new row to the table tbody.appendChild(clone); } 

más información en: http://www.w3schools.com/jsref/coll_table_tbodies.asp

  • ¿Por qué JavaScript solo funciona después de abrir las herramientas de desarrollador en IE una vez?
  • Rareza de cookies en IE
  • Internet Explorer no respeta el ancho máximo ni la altura máxima
  • Obtenga código JavaScript JSON en IE usando jQuery
  • IE9: Script solo funciona en depurador, pero no cuando NO depura
  • Detectando si IE7 o inferior con comentarios condicionales y javascript no funciona
  • Dropdown select in form no funciona en Internet Explorer
  • IE Bug (window === top) === falso
  • ¿Cómo hago para que VML funcione en modo estándar?
  • La barra de desplazamiento de la tabla salta cuando la tabla recibe el foco en IE
  • "Permiso denegado" con Internet Explorer y jQuery
  • CORS con acceso IE11 + denegado con SSL a localhost
  • El marcador de position de Textarea no se muestra en IE 11 que se representa utilizando Reaccionar
  • Javascript tiene muchos buenos JS marco (como Node.js AngularJS Vue.js React.js) es el mejor lenguaje de script.