Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

bdoweb

mudar nome de elemento clonado

Recommended Posts

Salve Salve galera ...Bom gostaria de saber se é possivel renomear um objeto clonado(cloneNode)... Tipo no caso de um input eu consigo alterar o atributo "name" dele...Valew[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

Bom não sei exatamente se é isso que você quer, mas eu fiz aqui um script que pesquisa o nome de todos os componentes de um form seja ele de input a select e renomeia o nome dele com um codigo se já houver um componete com o mesmo nome. Segue o código abaixo:

 

<script>function renameObjects (){	var nomes = new Array();	var count = 0;	nomes.push(document.meuform.elements[0].name);	for (var i=1; i < document.meuform.elements.length; i++) {	  var existe = false;		for (var j=0; j < nomes.length; j++) {			if (document.meuform.elements[j].name == nomes[j]) existe = true;		}				if (existe) {		  alert('Renomeei '+document.meuform.elements[j].name+' para '+document.meuform.elements[j].name + count);			document.meuform.elements[j].name = document.meuform.elements[j].name + count;			alert(document.meuform.elements[j].name+' cadastrado no array');			nomes.push(document.meuform.elements[j].name + count);			count ++;		} else {			alert(document.meuform.elements[j].name+' cadastrado no array');			nomes.push(document.meuform.elements[j].name);		}	}}</script>

Para testar usei isso aqui:

<body onLoad="renameObjects();"><form NAME="meuform">	<input TYPE="text" NAME="textfield" onClick="alert(this.name)"><br>	<input TYPE="text" NAME="textfield" onClick="alert(this.name)"><br>	<input TYPE="text" NAME="textfield" onClick="alert(this.name)"><br>	<input TYPE="text" NAME="textfield" onClick="alert(this.name)"></form></body>

o codigo javascript deve ficar entre as tag <head> e </head>

 

Abraços, T+

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um script mais simples..

campos = document.getElementById("div2").getElementsByTagName("input");var n = 2;   for(i=0;campos.length;i++){	   if(i==n){		 campos.item(i).name="outro_nome";   }}

Acho que você vai entender :P : :D

Você pode melhorar, verificando se o campo é text, radio ou outros.. para isso, é só colocar mais um if() antes ou depois do if() já existente. .

Qualquer coisa, volte a postar..

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.