Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/12/2009, 11:07
JAIMECANO
 
Fecha de Ingreso: abril-2009
Mensajes: 34
Antigüedad: 15 años, 9 meses
Puntos: 1
Clonacion a lo bestia

Buenas...
siguiendo el ejemplo de caricatos he decido crear un div con todos sus elementos, así pues me encuentro un problema al clonar, este es el código

Código PHP:
function clonar(texto){
        
fila++;
        
//clonamos elementos
        
var capa document.getElementById("capa");
        var 
muestra document.getElementById("muestra");
        var 
nuevafila muestra.cloneNode(true);
        
//nuevafila
        
numero="divfila"+fila;
        
nuevafila.id=numero;
        
        
//Cambiamos los id, names ..etc
        //el div del span
        
var divspan nuevafila.getElementById("divspan");
        
divspan.id="divspan"+fila;
        var 
spantexto divspan.getElementById("spantexto");
        
spantexto.id="paratexto"+fila;
        
spantexto.name="paratexto"+fila;
        
spantexto.style.width="460px";
        
spantexto.innerHTML texto;
        if(
fila%2==0){//un estilo para una linea
            
spantexto.style.background="#E4E4E4";
            }else{
//y otro mas claro para la siguiente
            
spantexto.style.background="#CCCCCC";
            } 
El codigo html
Código HTML:
<div id="muestra">
	<div id="divspan" style="overflow:hidden"	style="float:left">
		<span id="spantexto" name="texto" >
		</span>
	</div>
	<div id="divimg">
		<img id="su"  src="../images/flechaarriba.jpg" alt="Subir Filtro"  align="absbottom" onclick="subir(this)">
		<img id=ba"   src="../images/flechaabajo.jpg" alt="Baja Filtro" align="absbottom" onclick="bajar(this)">
		<img id=eli"  src="../images/eliminar.jpg" alt="Borrar Filtro" align="absbottom" onclick="eliminar(this)">
		<input width="22" height="22" type="radio" name="radio" id="radio" onclick="elegir(this)"/>
	</div>
</div> 
Cuando clono los elementos tengo un problema, necesito cambiarle los Id para que no se dupliquen y pueda tener control sobre cada elemento.

El problema me viene en la linea
Código PHP:
var nuevafila muestra.cloneNode(true);
        
//nuevafila
        
numero="divfila"+fila;
        
nuevafila.id=numero;
        
        
//Cambiamos los id, names ..etc
        //el div del span
        
var divspan nuevafila.getElementById("divspan");
        
divspan.id="divspan"+fila
Necesito coger cada elemento hijo del elemnto padre clonado y es justo en ese punto donde me pierdo, ya que el metodo var divspan = nuevafila.getElementById("divspan"); no me sirve :(

Que necesito para poder cambiar los id?