JSP (Java Server Page) - Asignar nombre a input text dinámicos

 
Vista:

Asignar nombre a input text dinámicos

Publicado por Nuria (5 intervenciones) el 13/04/2007 13:08:29
Hola,
estoy haciendo un página jsp donde se crean textfield de manera dinámica, al pulsar un botón cuando se está ejecutando, el usuario introducirá datos en ellos y yo los recojo en un servlet. Tengo una variable "cont" con el número de textfield introducidos dinámicamente. Necesito saber el nombre asignado a los textfiel para poder hacer request e introducir los datos en un vector "respuestas"

______________________________________________Código:
for (int i = 1; i < cont + 1; i++) {
textfield = request.getParameter("NOMBRE DEL TEXTFIELD") ;
respuestas.addElement(textfield);
}
________________________________________________
Cuando genero los textfield intento asignarles yo un nombre, para eso utilizo el mismo contador puesto que no sé cuántos se van a generar, le asigno el nombre correspondiente a su número pasado a cadena

_______________________________________________Código:
var num = <%=Integer.toString(cont)%>;
var cadtxt='<td><input type="text" name=num value=""></td>'
________________________________________________
Pues bien, esto no funciona, alguien sabe qué estoy haciendo mal o cómo podría resolver el problema.
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Asignar nombre a input text dinámicos

Publicado por Nuria (5 intervenciones) el 13/04/2007 13:25:07
Hola, soy yo otra vez, he probado asignando un nombre en concreto "txt1dina" y sí funciona

var cadtxt='<td><input type="text" name="txt1dina" value=""></td>'

El problema es entonce cómo puedo construir una cadena en JSP a partir de una variable Java, que sería en contador de textfield: cont
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Asignar nombre a input text dinámicos

Publicado por Gonzalo (72 intervenciones) el 13/04/2007 13:55:58
var cadtxt = '<td><input type="text" name="' + num + '" value=""></td>'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Asignar nombre a input text dinámicos

Publicado por nae (1 intervención) el 16/04/2007 00:53:22
¿Por qué no funciona de esta manera?¿cómo concateno una cadena con una variable?
var cadtxt = '<td><input type="text" name="textfield__" + "'num'" value=""></td>'
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Asignar nombre a input text dinámicos

Publicado por Gonzalo (72 intervenciones) el 16/04/2007 12:11:12
Porque no estás concatenando bien.
Tiene que ser:
'blablablalblablabla' + num + 'masblablabla'.

Pero tú estás poniendo algo como:
'blablablabla +' num 'masblablabla'

Es decir, entre cada trozo de cadena y cada variable, tiene que ir un +, y ese + tiene que ir fuera de las comillas:

var cadtxt = '<td><input type="text" name="textfield__' + num + '" value=""></td>';
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Asignar nombre a input text dinámicos

Publicado por nae (5 intervenciones) el 16/04/2007 22:21:39
Ok, gracias ya funciona.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Asignar nombre a input text dinámicos

Publicado por Jonathan (2 intervenciones) el 21/04/2010 20:09:54
en la variable cadtext la estas inicializando como una constante su atributo name nunca va a cambiar, prueba concatenando strings.
var comillas = ";
var cadtext = "etiqueta con atributo name=" + comillas + ccount + comillas + "cierre de etiqueta";
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar