Hola, Adler, gracias por contestar:
Ya vi aquel post, antes de postear esto. En el código ese, haces más o menos lo que yo tengo. Mi problema es más bien que al pinchar en el botón de añadir nuevos inputs, me aparecen bien en la página, pero no puedo acceder a ellos, me salta Undefined.
Por otra parte, me he fijado que en mi código hay un pequeño fallo, en lo que aquí es la línea 13 del archivo de comprobación:
for(u=
=1;u < obj;u++)
La he cambiado, dejándola así:
Código Javascript
:
Ver originalfor(u=1;u < obj.length;u++)//pongo length para comprobar el número de valores del array
Igualmente, sigue ocurriendo que por cada valor del array, aparecen tres alerts: uno en el que pone "track", cuando debería poner "trackn" (donde n es un número), y luego otros dos en los que pone "undefined".
He decidido hacer otra cosa: comienzo con cero inputs, y un botón en el que se pregunta el número de pistas, para crear ese número de inputs, solo que ahora hay un bucle FOR que nunca llega a ejecutarse:
Código Javascript
:
Ver originalvar tracks=parseInt(prompt('¿Cuántas pistas tiene el disco?'));
if(!parseInt(tracks))
{
alert('En números, por favor');
newTrack();
}
else if(parseInt(tracks)&&tracks > 30)
{
alert('30 es un buen número para las canciones. Si el disco tiene más, pon las 30 primeras');
newTrack();
}
else
{
alert('al menos llega hasta aquí');
for(var w=1;w == tracks; w++)
{
alert('Este alert No aparece en ningún momento, y tampoco se crea abajo el input');
document.getElementById('tracklist').innerHTML='<input type="text" name="track'+w+"\"><br>\n";
}
alert('Este alert sí aparece');
}
Simplemente, el bucle no existe en el código... .
¿Alguna idea de cómo hacer lo que pretendo, pero que funcione?
Muchas gracias!