Ir para conteúdo

Arquivado

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

Carcleo

Pegar id da div

Recommended Posts

pessoal, imagine a cena;

 

,<div id="minha_div">
     <input type="button" value="Enviar" onclik="vaida (id_da_div);" />
</div>

 

Preciso pegar o ID da div que o botão esta dentro dela e passar por parâmetro.

 

Como fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ai é javascript:

<div id="minha_div">

<input type="button" value="Enviar" onclick="vaida(this.parentNode.id);" />

</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites
parentNode ou parentNode()?

Coloquei parentNode(0). Mas quando dei proceguimento, na hora da funçao criar o innerHTML, o console respondeu que :

 

Object #<HTMLInputElement> has no method 'getParentNode'

Compartilhar este post


Link para o post
Compartilhar em outros sites

<div id="minha_div">
     <input type="button" value="Enviar" onclick="alert(this.parentNode.id);" />
</div>

ai aparece no alert: minha_div

 

O erro que vc teve ai, é em relação a outra parte do seu código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A idéia é criar campos adicionais no form.

Porem, para cada conjunto de campos haverá uma div com id diferente:

 

Talvez seja o caso de mover para JavaScript;

 

var qtdeCampos = 1;
 
 
 
function addCampos(campoPai,servico) {
 
var objPai = document.getElementById(campoPai);
 
//Criando o elemento DIV;
 
var objFilho = document.createElement("div");
 
//Definindo atributos ao objFilho:
 
objFilho.setAttribute("id","filho"+qtdeCampos);
 
 
 
//Inserindo o elemento no pai:
 
objPai.appendChild(objFilho);
 
//Escrevendo algo no filho recém-criado:
 
 
document.getElementById("filho"+qtdeCampos).innerHTML = "<fieldset><legend>Tipo"+qtdeCampos+"</legend><label>Nome Tipo: </label><input type='text' id='nomeTipo"+qtdeCampos+"' name='nomeTipo["+servico+"]["+qtdeCampos+"]'><br />      <label>Qtde Pessoas: </label><input type='text' id='qtdePessoas"+qtdeCampos+"' name='qtdePessoas["+servico+"]["+qtdeCampos+"]'><br /><label>Preço: </label><input type='text' id='preco"+qtdeCampos+"' name='preco["+servico+"]["+qtdeCampos+"]'><br /><label>Descrição: </label><textarea id='descricao"+qtdeCampos+"' name='descricao["+servico+"]["+qtdeCampos+"]'></textarea><br /></fieldset><input type='button' onclick='removerCampo("+qtdeCampos+")' value='Apagar campo'>";
 
 
qtdeCampos++;
 
}
 
 
 
function removerCampo(id) {
 
var objPai = document.getElementById(campoPai);
 
var objFilho = document.getElementById("filho"+id);
 
 
 
//Removendo o DIV com id específico do nó-pai:
 
var removido = objPai.removeChild(objFilho);
 
}

 

 

A coisa é mais difícil do que eu pensava.

 

 

 

O que esta pegando é que eu preciso criar divs.

 

Tem o serviço 1 que quero criar as divs 1,2 3.......... dele.

Tem o serviço 2 que quero criar as divs 1,2 3.......... dele.

 

Mas esta criando o tipo 1 para serviço 1, o tipo 2 para o serviço 2.

Acho que terei que criar duas funções distintas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Talvez ajude em algo mais - link

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.