Foros del Web » Programando para Internet » Javascript »

mdificar HTML desde JS

Estas en el tema de mdificar HTML desde JS en el foro de Javascript en Foros del Web. Hola amigos, tengo un SELECT y me pasn un OPTION mediante una caja de texto ¿Como hago para cargar el nuevo elemento en la lista(SELECT)? ...
  #1 (permalink)  
Antiguo 06/04/2011, 10:33
 
Fecha de Ingreso: diciembre-2007
Mensajes: 299
Antigüedad: 16 años, 4 meses
Puntos: 2
Pregunta mdificar HTML desde JS

Hola amigos,
tengo un SELECT y me pasn un OPTION mediante una caja de texto ¿Como hago para cargar el nuevo elemento en la lista(SELECT)?

Gracias, saludos:D
  #2 (permalink)  
Antiguo 06/04/2011, 11:17
Avatar de laratik  
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 13 años, 11 meses
Puntos: 63
Respuesta: mdificar HTML desde JS

por medio de DOM:

Código HTML:
<html>
<head>

<script>
function agregar() {
	var val = document.getElementById("valor").value;
	var opt =document.createElement("option");
	var text = document.createTextNode(val);
	opt.appendChild(text);
	document.getElementById("target").appendChild(opt);
}
</script>
</head>
<body>
<select id="target"></select>
<input type="text" id="valor"><input type="button" value="agregar" onClick="agregar()">
</body>
</body>
</html> 
por medio de innerHTML:

Código HTML:
<html>
<head>

<script>
function agregar() {
	var val = document.getElementById("valor").value;
	var opt = document.getElementById("target").innerHTML+"<option>"+val+"</option>";
	document.getElementById("target").innerHTML = opt;
}
</script>
</head>
<body>
<select id="target"></select>
<input type="text" id="valor"><input type="button" value="agregar" onClick="agregar()">
</body>
</body>
</html> 
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.
  #3 (permalink)  
Antiguo 06/04/2011, 11:58
 
Fecha de Ingreso: diciembre-2007
Mensajes: 299
Antigüedad: 16 años, 4 meses
Puntos: 2
Respuesta: mdificar HTML desde JS

Gracias por tu solucion laratik¡¡¡

probe a hacerlo mediante INNERHTML y me salio perfecto, solo te comento dos pequeños problemas:
*en FF me funciona perfectamente, pero en IE no funciona bien(o bien se sale o me vacia toda la lista),¿una solucion para IE(que funcione en ambos, claro)?

*al cargar la lista con el nuevo elemento se pierde la posible seleccion que tenga, ¿hay alguna solucion para no perderla o debo recorrer la lista y guardar el elemento seleccionado antes de cargar la nueva lista?
  #4 (permalink)  
Antiguo 06/04/2011, 12:30
Avatar de laratik  
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 13 años, 11 meses
Puntos: 63
Respuesta: mdificar HTML desde JS

no me habia fijado pero si, en IE se deforma el string cuando lo ingreso por innerHTML (más precisamente me quita la primera etiqueta), solución a todos tus problemas... utiliza el método del DOM, lo he probado en ambos navegadores y funciona bien, ademas no pierde la selección .
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.
  #5 (permalink)  
Antiguo 09/04/2011, 05:18
 
Fecha de Ingreso: diciembre-2007
Mensajes: 299
Antigüedad: 16 años, 4 meses
Puntos: 2
Respuesta: mdificar HTML desde JS

perdona mi ignorancia.............el metodo del DOM?
¿a que te refieres?¿Al 1er metodo de tu post anterior?

Última edición por alfa18; 09/04/2011 a las 09:00
  #6 (permalink)  
Antiguo 10/04/2011, 13:51
Avatar de laratik  
Fecha de Ingreso: mayo-2010
Ubicación: Cali
Mensajes: 317
Antigüedad: 13 años, 11 meses
Puntos: 63
Respuesta: mdificar HTML desde JS

exactamente:

Código HTML:
<html>
<head>

<script>
function agregar() {
	var val = document.getElementById("valor").value;
	var opt =document.createElement("option");
	var text = document.createTextNode(val);
	opt.appendChild(text);
	document.getElementById("target").appendChild(opt);
}
</script>
</head>
<body>
<select id="target"></select>
<input type="text" id="valor"><input type="button" value="agregar" onClick="agregar()">
</body>
</body>
</html> 
__________________
Programar apasiona y lo que apasiona es un arte, por lo tanto programar es un arte.

Quiero karma para en mi próxima vida ser un billonario bien dotado con alas.

Etiquetas: html, js
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 17:41.