Foros del Web » Programando para Internet » Javascript »

¿como creo un atributo html (id="mi_id") usando el dom?

Estas en el tema de ¿como creo un atributo html (id="mi_id") usando el dom? en el foro de Javascript en Foros del Web. Hola, Resulta que estoy intentando reemplazar un texto por otro a traves de radiobuttons, aqui el código: Código: function cambiaPanel () { var anclaTexto = ...
  #1 (permalink)  
Antiguo 14/03/2010, 21:07
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
¿como creo un atributo html (id="mi_id") usando el dom?

Hola, Resulta que estoy intentando reemplazar un texto por otro a traves de radiobuttons, aqui el código:
Código:
        function cambiaPanel () { 
var anclaTexto = document.createTextNode("XHTML");                   // creamos el nodo de texto
var nuevoAncla = document.createElement("strong");                  // creamos el elemento padre del nodo de texto
nuevoAncla.appendChild(anclaTexto);                                   // añadimos el hijo al padre
var anclaExistente = document.getElementById("delivery");         // obtenemos el elemento a reemplazar
var padre = anclaExistente.parentNode;                           // obtenemos al padre del elemento a reemplazar
var nuevoHijo = padre.replaceChild(nuevoAncla, anclaExistente);
        }
        function cambiaPanelEMAIL () { 
            var anclaTexto = document.createTextNode("XHTML Email");
            var nuevoAncla = document.createElement("strong");
            nuevoAncla.appendChild(anclaTexto);
            var anclaExistente = document.getElementById("delivery");
            var padre = anclaExistente.parentNode;
            var nuevoHijo = padre.replaceChild(nuevoAncla, anclaExistente);
        }
        function cambiaPanelWP () { 
            var anclaTexto = document.createTextNode("Wordpress");
            var nuevoAncla = document.createElement("strong");
            nuevoAncla.appendChild(anclaTexto);
            var anclaExistente = document.getElementById("delivery");
            var padre = anclaExistente.parentNode;
            var nuevoHijo = padre.replaceChild(nuevoAncla, anclaExistente);
        }
        function cambiaPanelJ () { 
            var anclaTexto = document.createTextNode("Joomla");
            var nuevoAncla = document.createElement("strong");
            nuevoAncla.appendChild(anclaTexto);
            var anclaExistente = document.getElementById("delivery");
            var padre = anclaExistente.parentNode;
            var nuevoHijo = padre.replaceChild(nuevoAncla, anclaExistente);
        }

<span>XHTML</span> <input id="xhtml" type="radio" name="entregar"  value="xhtml" class="radio" onclick="cambiaPanel();"/>
<span>XHTML Email</span><input id="xhtmlEmail" type="radio" name="entregar"  value="xhtml email" class="radio" onclick="cambiaPanelEMAIL();" />
<span>Wordpress</span>  <input id="wp" type="radio" name="entregar"  value="wordpress" class="radio"  onclick="cambiaPanelWP();"/>
<span>Joomla</span> <input id="j"  type="radio" name="entregar"  value="joomla" class="radio" onclick="cambiaPanelJ();"/>
                    

       <p>Entregar como: <strong id="delivery"></strong></p>
Bien, lo que me falta es incluir a traves de dom un atributo html (id="delivery") a mi etiqueta strong dinámica, con lo que conseguiría que al hacer click sobre los radiobuttons estos vallan modificando la etiqueta strong.

¿Como puedo lograr esto? Muchas gracias.
  #2 (permalink)  
Antiguo 14/03/2010, 22:10
Avatar de cristian_cena
Colaborador
 
Fecha de Ingreso: junio-2009
Mensajes: 2.244
Antigüedad: 14 años, 10 meses
Puntos: 269
Respuesta: ¿como creo un atributo html (id="mi_id") usando el dom?

Muchas gracias de todos modos, para quien le sirva muestro como lo resolví, simplemente añadiendo nuevoAncla.setAttribute("id", "delivery"); al final de cada función.
Código:
function cambiaPanel () { 
			var anclaTexto = document.createTextNode("XHTML"); 				 // creamos el nodo de texto
			var nuevoAncla = document.createElement("strong");		 		 // creamos el elemento padre del nodo de texto
			nuevoAncla.appendChild(anclaTexto);				 		 		 // añadimos el hijo al padre
			var anclaExistente = document.getElementById("delivery");		 // obtenemos el elemento a reemplazar
			var padre = anclaExistente.parentNode;                  		 // obtenemos al padre del elemento a reemplazar
			var nuevoHijo = padre.replaceChild(nuevoAncla, anclaExistente);  // reemplazamos al viejo elemento por el nuevo
			nuevoAncla.setAttribute("id", "delivery");						 // damos un atributo al muevo elemento
		}
Saludos

Etiquetas: dom, html, atributos
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 14:07.