Este es mi primer post en el foro, suelo casi siempre encontrar una solución a mis problemas en este foro, pero esta vez hay algo que se me escapa y no tengo idea de que puede ser. El código es el siguiente:
Código:
Se trata de un formulario que posee una lista, dentro de cada <li> tengo un texto (el firstChild) y luego un <input> (el firstChild.nextSibling, porque podría ser un <select> también). valores = document.getElementById(iden).getElementsByTagName('li'); var lista = String(); for(counter=0; valores.length >= counter; counter++) { alert(valores[counter].firstChild.nextSibling.value); }
Recojo los valores introducidos por el usuario primero cogiendo un array con todos los <li> (con getElementsByTagName) dentro de mi div con su lista, luego voy a por cada uno de ellos con el for, indico que me interesa el "value" del segundo "child".
Quedaría asi: valores[counter].firstChild.nextSibling.value
Mi problema:
Lo que pasa es que si intento mostrar ese valor con un alert() me lo enseña sin problemas, pero si lo quiero sumar a una string de la siguiente forma:
Código:
no funciona, el JavaScript Debugger de Firefox, que de por si es bastante ambiguo en algunos casos, me dice lo siguiente:valores = document.getElementById(iden).getElementsByTagName('li'); var lista = String(); for(counter=0; valores.length >= counter; counter++) { lista+=valores[counter].firstChild.nextSibling.value; }
Error 'valores[counter] is undefined'
Mientras que de la otra forma no se queja, me lo enseña sin problemas.
¿Alguien sabe decirme de que se trata?