Foros del Web » Programando para Internet » Javascript »

insertar filas con valor "autonumerico"

Estas en el tema de insertar filas con valor "autonumerico" en el foro de Javascript en Foros del Web. Hola, tengo el siguiente codigo extraido de otro hilo del foro para mediante un boton ir añadiendo filas dinamicamente a una tabla: Código: <script language=javaScript1.2> ...
  #1 (permalink)  
Antiguo 28/05/2005, 03:39
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años
Puntos: 0
insertar filas con valor "autonumerico"

Hola, tengo el siguiente codigo extraido de otro hilo del foro para mediante un boton ir añadiendo filas dinamicamente a una tabla:

Código:
<script language=javaScript1.2> 
function suma()    { 
    	var miTabla = document.getElementById("cuerpoTabla"); 
    	var fila = document.createElement("tr"); 
    	var celda1 = document.createElement("td"); 
    	var celda2 = document.createElement("td"); 
    	celda1.innerHTML="<input type='text' name='id' size='5' value="...">"; 
    	celda2.innerHTML="<input type='text' name='fecha' size='10'>";
    	fila.appendChild(celda1); 
    	fila.appendChild(celda2); 
    	miTabla.appendChild(fila); 
     }
 
</script> 

...

<button onclick=suma()>Añadir turno</button>
El codigo hace su funcion perfectamente pero me gustaria saber si es posible que el campo "id" vaya cogiendo automaticamente valores (value="...") desde el 1 en adelante.

Un saludo.
  #2 (permalink)  
Antiguo 28/05/2005, 03:45
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola choroy

Create una variable global:
Código:
<script language=javaScript1.2> 
var num=0;
function suma()    {
y dentro de la función le añades 1 (num+=1) y lo usas donde lo necesites.

Saludos,
  #3 (permalink)  
Antiguo 28/05/2005, 04:08
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años
Puntos: 0
Perdona mi ignorancia, pero precisamente el javascript no es mi fuerte

Como tendria que hacer para insertar el valor de la variable en el codigo?

Código:
celda1.innerHTML="<input type='text' name='id' size='5' value='...'>";
  #4 (permalink)  
Antiguo 28/05/2005, 04:20
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años
Puntos: 0
RESUELTO, como vengo de asp estaba cambiandolos signos "+" por "&", jeje
  #5 (permalink)  
Antiguo 28/05/2005, 07:33
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Si es que además de informática hay que saber idiomas Me alegro de que al final te haya salido bien. Taluego
  #6 (permalink)  
Antiguo 28/05/2005, 08:16
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años
Puntos: 0
Ya estoy otra vez aqui con un nuevo problema, lo que estoy haciendo se encuentra en ESTA PAGINA

Y como podeis ver el tema de insertar filas y quitarlas lo tengo claro, lo del autonumerico tambien, lo que ocurre es que quiero que cuando llegue a la fila 1 deje de borrar, y he probado de varias formas pero no lo consigo.

La primera fila es fija y no me la genera el javascript, por eso la variable tiene el valor 1 y no 0, el codigo es el siguiente:

Código:
<script language=javaScript1.2> 

var num=1;

function resta() { 
    var miTabla = document.getElementById("cuerpoTabla");   

        num=(num-=1)
        miTabla.deleteRow(); 

}

function suma()    { 
    	var miTabla = document.getElementById("cuerpoTabla"); 
    	var fila = document.createElement("tr"); 
    	var celda1 = document.createElement("td"); 
    	var celda2 = document.createElement("td"); 
    	var celda3 = document.createElement("td");
    	var celda4 = document.createElement("td");
    	var celda5 = document.createElement("td");
    	num=(num+=1)
    	celda1.innerHTML = "<p align='center'><input type='text' name='turno' size='3' value='"+num+"'>"; 
    	celda2.innerHTML = "<p align='center'><textarea rows='1' name='hora' cols='6'></textarea>";
    	celda3.innerHTML = "<textarea rows='1' name='profesor' cols='17'></textarea>"; 
    	celda4.innerHTML = "<textarea rows='1' name='alumno' cols='17'></textarea>"; 
    	celda5.innerHTML = "<p align='center'><textarea rows='1' name='aula' cols='4'></textarea>"; 
    	fila.appendChild(celda1); 
    	fila.appendChild(celda2); 
    	fila.appendChild(celda3); 
    	fila.appendChild(celda4); 
    	fila.appendChild(celda5); 
    	miTabla.appendChild(fila); 
     }
 
</script> 

........


<button onclick=suma()>+</button>&nbsp;<button onclick=resta('num')>-</button>

Alguien puede echarme una mano???

Gracias
  #7 (permalink)  
Antiguo 28/05/2005, 10:35
 
Fecha de Ingreso: mayo-2002
Mensajes: 197
Antigüedad: 22 años
Puntos: 0
SOLUCIONADO tambien, no sabia que habia que ponerle los {} a la condicion
  #8 (permalink)  
Antiguo 29/10/2007, 13:00
 
Fecha de Ingreso: octubre-2007
Mensajes: 1
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: insertar filas con valor "autonumerico"

Cita:
Iniciado por choroy Ver Mensaje
SOLUCIONADO tambien, no sabia que habia que ponerle los {} a la condicion
Disculpenme, soy nuevo en esto y quiero saber como valido estas filas... aca les mando mi codigo:
lo he intentado con un hidden:

<input type='hidden' name='val' value='0'>

este es para agregar.

function addAgenda(){
if (!document.createElement) return false;
if (!document.createTextNode) return false;
if (!document.getElementById) return false;
if (!document.getElementById('agenda')) return false;



// get table and image
var tb = document.getElementById('agenda');
tb.name='tabl';
tb.border='0px';
tb.cellPadding='0px';

rowNum = parseInt(tb.rows.length);
k=rowNum;

if(document .forms[0].val.value=='0'){
val=0;
val=val+k;
alert(val);}

// for each attribute, add table row
var rw = tb.insertRow(-1);

// create tree table cells
var celd1 = rw.insertCell(0);
var celd2 = rw.insertCell(1);

celd1.width = '50%';
celd2.width = '50%';

celd1.bgcolor='#000000';
celd2.bgcolor='#000000';

// create elements
var tem = document.createElement('input');
tem.setAttribute('width','34px');


tem.type='text';
tem.size='3';
tem.className='inpCod';
tem.id='sTem['+k+']';
tem.name='sTem['+k+']';
var dur = document.createElement('input');

dur.type='text';
dur.className='inpTex';
dur.name='sDur['+k+']';



// append elements to cells
celd1.appendChild(tem);
celd2.appendChild(dur);

}

</script>



este para validar:

function validar(){


if(document .forms[0].val.value=='0'){

alert(val);}
//document.forms[0].submit();
}
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 05:18.