Foros del Web » Programando para Internet » Javascript »

Eliminar fila de una tabla

Estas en el tema de Eliminar fila de una tabla en el foro de Javascript en Foros del Web. Hola a todos tengo la siguiente funcion: function borrar(objeto) { var nodo_del_row = objeto.parentNode.parentNode; var index_del_row = nodo_del_row.rowIndex; var nodo_de_tabla = nodo_del_row.parentNode; x=objeto.parentNode.parentNode.parentNode; x.deleteRow(index_del_row); } ...
  #1 (permalink)  
Antiguo 26/09/2007, 05:28
 
Fecha de Ingreso: marzo-2007
Mensajes: 69
Antigüedad: 17 años, 1 mes
Puntos: 0
Eliminar fila de una tabla

Hola a todos

tengo la siguiente funcion:
function borrar(objeto)
{
var nodo_del_row = objeto.parentNode.parentNode;
var index_del_row = nodo_del_row.rowIndex;
var nodo_de_tabla = nodo_del_row.parentNode;
x=objeto.parentNode.parentNode.parentNode;
x.deleteRow(index_del_row);
}

La cual funciona perfectamente, el problema es que la tengo en varios archivos y en uno de ellos no me funciona, aparentemente las tablas estan iguales, pero no doy con el daño. el codigo d ela tabla es el siguiente:

<table width="435" border="0" align="center" class="BORDE_TABLAS" id="tb_fechas">
<tr bgcolor="#f1f1f1">
<td colspan="4"><div align="left">
<p><img src="../Imagenes/log_ed.jpg" alt="Actualizar" width="48" height="48" border="0" /><span class="Estilo11"> Fechas para Calificaciones </span></p>
<p class="Estilo25">En este espacio se asigna para cada periodo, el rango de fechas en el cual estar&aacute; habilitado el ingreso de notas.
<input name="tipo" type="hidden" id="tipo" value="2" />
</p>
</div> </td>
</tr>
<tr bgcolor="#f1f1f1">
<td colspan="4"><div align="right"><span class="Estilo22">[A&ntilde;adir nueva fila]</span>
<input type="button" name="Submit3" value="+" onclick="javascript:CrearInput('tb_fechas');"/>
</div></td>
</tr>
<tr>
<td width="140" bgcolor="#000066"><div align="center"><strong><span class="Estilo26">Periodo(s)</span></strong></div></td>
<td width="126" bgcolor="#000066"><div align="center"><strong><span class="Estilo26">Fecha Inicial </span></strong></div></td>
<td width="126" bgcolor="#000066"><div align="center"><strong><span class="Estilo26">Fecha Final</span></strong></div></td>
<td width="23" bgcolor="#000066"><div align="center"></div></td>
</tr>
<tr>
<td bgcolor="#FFFFFF"><div align="center">
<?php
include '../includes/conexion2.php';
$sql="SELECT * FROM periodo ORDER BY P_Anyo DESC, P_Periodo DESC;";
$result=mysql_db_query($_SESSION['base_datos'], $sql, $conexion);
if(mysql_num_rows($result)==0)
{
echo '<font face="arial" size=2 color="#FF0000">No definidos.</font>';
}
else
{
echo '<select name="periodo" id="periodo"><option value="-1">[Elija Per&iacute;odo]</option>';
while($row=mysql_fetch_array($result))
{
echo '<option value="'.$row['P_Id'].'-'.$row['P_Anyo'].'">'.$row['P_Anyo'].'-'.$row['P_Periodo'].'</option>';
}
echo '</select>';
}
mysql_close($conexion);

?></div></td>
<td bgcolor="#FFFFFF"><div align="center"><span class="Estilo27">
<input name="fechaini" type="text" id="fechaini" size="15" maxlength="10" />
</span></div></td>
<td bgcolor="#FFFFFF"><div align="center"><span class="Estilo27">
<input name="fechafin" type="text" id="fechafin" size="15" maxlength="10" />
</span></div></td>
<td bgcolor="#FFFFFF"><div align="center"><span class="Estilo27">
<input type="button" name="Submit32" value="x" onclick='borrar(this);'/>
</span></div></td>
</tr>
</table>


Existe algun error en el código?


Gracias
  #2 (permalink)  
Antiguo 26/09/2007, 10:56
 
Fecha de Ingreso: diciembre-2006
Mensajes: 11
Antigüedad: 17 años, 4 meses
Puntos: 0
Re: Eliminar fila de una tabla

en la linea q tienes en rojo pon:
onclick="borrar(this)">
q el input no tienes porque cerrarlo ya q trabajas dentro y el punto y coma no vale para nada.
pon lo q te digo y me cuentas
saludos
  #3 (permalink)  
Antiguo 26/09/2007, 18:24
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Eliminar fila de una tabla

Hola:

A veces no se puede estar seguro del tag donde estamos, así que mejor sería "buscarlo"... si ese borrar debe borrar un tag tr, lo mejor es hacer un bucle de los ancestros hasta encontrar la fila...

function borrar(que) {
yo = que;
while (yo.tagName.toUpperCase() != "TR") yo = yo.parentNode;
yo.parentNode.removeChild(yo);
}

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 26/09/2007, 20:02
 
Fecha de Ingreso: marzo-2007
Mensajes: 69
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Eliminar fila de una tabla

Gracias or sus valiosos aportes, pero tengo que decir al respecto de la respuesta de xeico que no funcionó el cambio que plantea y para caricatos que la funcion en otro archivo si funciona bien pero en este no, debe ser algo que esta pasando y no se que puede ser.
el mensaje de error en explorer es "El objeto no acepta esta propiedad o metodo" refiriendose a la linea x.deleteRow(index_del_row); de la funcion borrar.
y en mozila firefox me sale en la consola de errores "x.deleteRow is no a function" refiriensdose tambien a la misma linea.
  #5 (permalink)  
Antiguo 26/09/2007, 20:15
 
Fecha de Ingreso: marzo-2007
Mensajes: 69
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Eliminar fila de una tabla

Ya solucione el problema:
me puse a comparar el archivo con otro y dí con el problema.
Resulta que en el "td" donde está el boton con la "x" estaban un "div" y un "span" que producian el error, se los quite y listo.

Gracias de todos modos
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 14:57.