Foros del Web » Programando para Internet » Javascript »

Problema de borrado en Tablas Dinamicas

Estas en el tema de Problema de borrado en Tablas Dinamicas en el foro de Javascript en Foros del Web. Hola, no soy muy bueno en la creacion de páginas web, tengo un pequeño servidor que solo acepta HTML y bueno... estoy haciendo una Tabla ...
  #1 (permalink)  
Antiguo 19/01/2010, 09:51
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Problema de borrado en Tablas Dinamicas

Hola, no soy muy bueno en la creacion de páginas web, tengo un pequeño servidor que solo acepta HTML y bueno... estoy haciendo una Tabla para gastos (Tipo Factura aun no le modifico) Donde se pueda agregar o quitar alguna celda bueno...
Encontre este Codigo muy bueno de hecho para mi es perfecto, el problema esque al dar click a BORRAR no lo borra.... ¿Alguien me puede ayudar?

<HTML>

<HEAD>

<TITLE>Lista de Datos Dinámica</TITLE>

</HEAD>

<BODY>


<SCRIPT LANGUAGE="JavaScript">

var contador=1;

function añadirDatosLista ()
{
var t,fila,celda1,celda2,celda3,celda4,celda5,celda6,c elda7,nodo1,nodo2,nodo3,nodo4,nodo5,nodo6,borrar;

t=document.getElementById("tabla"); //Obtenemos la tabla por su identificador "tabla"

fila=t.insertRow(1); //Insertamos una nueva fila vacía en la primera posición de la tabla

celda1=fila.insertCell(0); //Añadimos una nueva celda a la fila antes creada en la tabla en la primera posición
celda2=fila.insertCell(1);
celda3=fila.insertCell(2);
celda4=fila.insertCell(3);
celda5=fila.insertCell(4);
celda6=fila.insertCell(5);
celda7=fila.insertCell(6);

nodo1=document.createTextNode(document.forms[0].dni.value); //Creación de un nodo de tipo texto con el texto del campo DNI
nodo2=document.createTextNode(document.forms[0].nombre.value);
nodo3=document.createTextNode(document.forms[0].ape1.value);
nodo4=document.createTextNode(document.forms[0].ape2.value);
nodo5=document.createTextNode(document.forms[0].edad.value);
nodo6=document.createTextNode(document.forms[0].ciudad.value);

borrar=document.createElement("<INPUT TYPE='button' VALUE=document.forms[0].dni.value ONCLICK='borrarDatosLista(this)'>"); //Creación del boton de borrado

contador++;

celda1.appendChild(nodo1); //Se agrega a la primera celda el nodo de tipo texto con el contenido del DNI
celda2.appendChild(nodo2);
celda3.appendChild(nodo3);
celda4.appendChild(nodo4);
celda5.appendChild(nodo5);
celda6.appendChild(nodo6);
celda7.appendChild(borrar);

}

function borrarDatosLista (obj)
{
t=document.getElementById("tabla");
//t.deleteRow ();

}


</SCRIPT>



<FORM NAME=formulario>

DNI: <INPUT TYPE="text" NAME=dni>
<BR>
Nombre: <INPUT TYPE="text" NAME=nombre>
<BR>
Apellido 1: <INPUT TYPE="text" NAME=ape1>
<BR>
Apellido 2: <INPUT TYPE="text" NAME=ape2>
<BR>
Edad: <INPUT TYPE="text" NAME=edad>
<BR>
Ciudad: <INPUT TYPE="text" NAME=ciudad>
<BR>
<BR>

<INPUT TYPE="button" VALUE="Añadir" onClick="añadirDatosLista ()">


</FORM>

<B>Lista de Datos Dinámica</B>

<BR>

<TABLE ID="tabla" BORDER="1">

<TR>
<TH>DNI</TH>
<TH>Nombre</TH>
<TH>Apellido 1</TH>
<TH>Apellido 2</TH>
<TH>Edad</TH>
<TH>Ciudad</TH>
<TH>Borrado</TH>
</TR>

</TABLE>


</BODY>

</HTML>
  #2 (permalink)  
Antiguo 19/01/2010, 09:58
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola daniiable

Muevo tu tema al foro de Javascript desde Web general.

Saludos,
  #3 (permalink)  
Antiguo 19/01/2010, 10:13
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema de borrado en Tablas Dinamicas

Cita:
Iniciado por JavierB Ver Mensaje
Hola daniiable

Muevo tu tema al foro de Javascript desde Web general.

Saludos,
OK !!!
Pero ¿alguien puede ayudarme?
  #4 (permalink)  
Antiguo 19/01/2010, 11:35
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 16 años
Puntos: 66
Respuesta: Problema de borrado en Tablas Dinamicas

hola daniiable,

estaba con ello... ;)

sustituye la línea--> borrar=document.createElement("<INPUT TYPE='button' VALUE=document.forms[0].dni.value ONCLICK='borrarDatosLista(this)'>"); //Creación del boton de borrado

por esto:
-------------------------------
borrar=document.createElement("input");
borrar.type='button'
borrar.value=document.forms[0].dni.value;
borrar.onclick= function()
{borrarDatosLista(this);}
----------------------------------
cuando creas un objeto tienes que hacerlo por partes; el elemento(input), luego el tipo (boton), el valor del boton (document...) y el evento se mete dentro de una nueva función

prueba y nos cuentas.

salu2
  #5 (permalink)  
Antiguo 19/01/2010, 13:28
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema de borrado en Tablas Dinamicas

Hola, ceSharp.

Pues ya lo intente y no
me pone el nombre de la celda 1 como el nombre del boton !....
Ahora pues estaba viendo como guardar el HTML....

Encontre este script:
Cita:
<script>
function guardahtml ()
{
document.execCommand('SAVEAS')
}
</script>
<input type='button' value="Guardar html" onclick="guardahtml();">
(En si es para guardar el documento en mi PC no es esactamente para ponerlo en Linea)
Me gustaria que el archivo se guardara en el mismo Documento, el problema esque los datos ingresador en la Tabla NO SE GUARDAN....

Les agradeceria mucho su ayuda....
  #6 (permalink)  
Antiguo 19/01/2010, 15:33
Avatar de Tecna  
Fecha de Ingreso: enero-2010
Mensajes: 291
Antigüedad: 14 años, 10 meses
Puntos: 45
Respuesta: Problema de borrado en Tablas Dinamicas

Buenas,

cuando le das a borrar no hace nada porque en la funcion borrarDatosLista no haces nada, solo asignas un elemento a una variable. La parte de deleteRow() está comentada. Pero sería mas sencillo cambiar el type del input a reset.
  #7 (permalink)  
Antiguo 19/01/2010, 17:07
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema de borrado en Tablas Dinamicas

Hola Tecna

Ya cambie el INPUT TYPE='RESET', pero no pasa nada:

borrar=document.createElement("<INPUT TYPE='RESET' VALUE=document.forms[0].dni.value ONCLICK='borrarDatosLista(this)'>");

Pense tambien en modificar el ONCLICK pero tampoco....
Tambien sigo intentando GUARDAR la info en mi PC.... pero solo me guarda el codigo HTML sin la información...
Agradeceria mas respuestas.
  #8 (permalink)  
Antiguo 20/01/2010, 01:47
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 16 años
Puntos: 66
Respuesta: Problema de borrado en Tablas Dinamicas

vamos a ver,

te pone como nombre de boton el valor de la celda 1 porque lo está cogiendo del campo con name="dni" (el que rellenas a mano) --> Value = "document.forms[0].dni.value" --> que traducido es del documento, el formulario número 0, el objeto con name dni, su valor.

En tu último post veo que sigues creando el botón borrar 'a lo bestia' jejejeje. Creo que no se puede usar createElement de esa manera, es decir, primero creas un elemento (input) luego le dices de que tipo es (button) y así, linea a linea, le vas diciendo las propiedades y atributos que debe tener ese boton (las 4 lineas que te puse en mi primera respuesta). Ya te digo que creo que es así y no se puede crear todo junto, porque sino no te va a funcionar el botón (ya empiezo a dudar, a ver si un caritativo super experto me da o me quita la razón...)

inténtalo así, crear el botón paso a paso, y le pones type reset y nos cuenta que te hace, ok?

salu2
  #9 (permalink)  
Antiguo 20/01/2010, 13:17
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema de borrado en Tablas Dinamicas

OKok, tienes razon sniff sniff...
pero nop, Tecna ia me habia dado el consejo de poner TYPE RESET pero nop....
sale error...
  #10 (permalink)  
Antiguo 20/01/2010, 13:48
Avatar de LuisdaviD  
Fecha de Ingreso: octubre-2006
Mensajes: 74
Antigüedad: 18 años
Puntos: 2
Respuesta: Problema de borrado en Tablas Dinamicas

Cuando usas el reset no es necesario ponerle el resto solo le pones esto y ya:

<input type="reset" value="Borrar">

Aquí hay algo que te puede ayudar:

http://www.desarrolloweb.com/articulos/650.php

Saludos.
  #11 (permalink)  
Antiguo 22/01/2010, 10:52
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema de borrado en Tablas Dinamicas

Gracias a todos por sus aportaciones pero ninguno le atino...
Segui buscando y encontre una tabal en donde el boton Borrar si sirve, estoy utilizando ese ejemplo para hacer la mia. Gracias de todas maneras, les dejo aqui el codigo.

Cita:
<html>
<script language="javascript">
var numero = 0;

function addNewRow()
{
// obtenemos acceso a la tabla por su ID
var TABLE = document.getElementById("tabla");
// obtenemos acceso a la fila maestra por su ID
var TROW = document.getElementById("celda");

// tomamos la celda
var content = TROW.getElementsByTagName("td");

// creamos una nueva fila
var newRow = TABLE.insertRow(-1);
newRow.className = TROW.attributes['class'].value;

// creamos una nueva celda
var newCell = newRow.insertCell(newRow.cells.length)

// creamos una nueva ID para el examinador
newID = 'file_' + (++numero);

// creamos un nuevo control
txt = '<input type="file" id="' + newID + '" size="50" />'

// y lo asignamos a la celda
newCell.innerHTML = txt

// aviso ;)
alert(txt)
}

function removeLastRow()
{
// obtenemos la tabla
var TABLE = document.getElementById("tabla");

// si tenemos mas de una fila, borramos
if(TABLE.rows.length > 2)
{
TABLE.deleteRow(TABLE.rows.length-1);
--numero;
}
}

function verElementos(evento)
{
for (i=0; i<=numero; i++)
{
var my_id = "file_" + i;
var my_file = document.getElementById(my_id);
alert ("id: " + my_id + " value: " + my_file.value);
}
}
</script>
<body>

<table border="0" id="tabla" width="100%">
<tr class="celda">
<td colspan="3">Pulse [+] para añadir un examinador de archivos<br/>
Pulse [-] para eliminar un examinador de archivos<br/>
Desarrolladores => Pulse [v] para ver el contenido de los examinadores<br/>
</td>
<td>
<input type="button" class="boton" value="[+]" onClick="addNewRow(event)" alt="Adicionar">&nbsp;
<input type="button" class="boton" value="[-]" onClick="removeLastRow(event)" alt="Remover">
<input type="button" class="boton" value="[v]" onClick="verElementos(event)" alt="Ver elementos">
</td>
</tr>
<tr id="celda" class="celda">
<td>
<input id="file_0" name="files" type="file" size="50">
</td>
</tr>
</table>
</body>
</html>
  #12 (permalink)  
Antiguo 22/01/2010, 11:55
Avatar de daniiable  
Fecha de Ingreso: noviembre-2009
Ubicación: Puebla, Pue.
Mensajes: 28
Antigüedad: 15 años
Puntos: 0
Respuesta: Problema de borrado en Tablas Dinamicas

"SOLUCIONADO"

Ya encontre el error del codigo

en la linea:
Cita:
function borrardatoslista (obj)
{
t=document.getelementbyid("tabla");
//t.deleterow ();

lo unico que se debe hacer es borrar los // quedando de la siguiente manera:

Function borrardatoslista (obj)
{
t=document.getelementbyid("tabla");
t.deleterow ();

y en el boton se cambiar value="borrar"
y ya se borra sin ningun problema.....


Heheheheheh
pruebenlo

Última edición por daniiable; 22/01/2010 a las 11:56 Razón: Se agregaron codigos

Etiquetas: borrado, dinamicas, tablas
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 18:12.