Ir para conteúdo

POWERED BY:

Arquivado

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

michelmfreitas

Como pegar todas id de um elemento p?

Recommended Posts

Pessoal, estou com seguinte problema...

 

tenho uma div com id A e dentro dessa div um elemento p, que contem uma Div com id B.

 

Ex.:

<div id='a'>
<p>pergunta
<div id='b'><p>resposta</p></div>
</p>
</div>

Meu cod JS:

function AbreFaq(id) {
	if(!mostra) {
		$("#faqinfo"+id).show();
		mostra=true;
	} else {
		$("#faqinfo"+id).hide();
		mostra=false;
	}
	$("#faqinfo"+id).focus();
}

Só que:

- O .focus() nao funciona... ele sempre volta pro topo da pagina quando clico...

- e gostaria de esconder todos as ids B: #a -> p ->#b.

 

Como resolvo o problema do focus e como faço isso com jquery?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa marcação não faz o menor sentido.

<p> dentro de <p> ??

 

<div> dentro de <p> ??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Essa marcação não faz o menor sentido.

<p> dentro de <p> ??

 

<div> dentro de <p> ??

 

Tentei descrever com outros elementos... na verdade está assim:

 

<div id='faq'>
//loop
<p><a href='#' onClick='AbreFaq({$a['id']})'>
<img src='img/setinha.gif' border='0' /> {$a['pergunta']}</a>
<span id='faqinfo{$a['id']}'><p>{$a['resposta']}</p></span>				
</p>
//fim do loop
</div>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Continua errada essa marcação.

<p> dentro de <span> ? não pode.

 

<p> dentro de <p>, tb não pode.

 

Com esse HTML confuso, fica quase impossível trabalhar.

$("#faq p"); //seleciona todos os parágrafos dentro de #faq.

 

$("#faq p").attr('id'); //seleciona os ids dos parágrafos dentro de #faq.

 

Sugiro reestruturar esse HTML. Tá muito ruim.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok, vou verificar o html depois...

 

quanto a

$("#faq p").attr('id'); //seleciona os ids dos parágrafos dentro de #faq.

nesse caso quero esconder todos os spans dentro de p, exceto o da #faqinfo63, por exemplo.

Eu nao posso usar $("#faq p").attr('id').hide(); ou posso? Como eu faço nesse caso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

pela tua estranha marcação, basta dar hide(), em todos os <span>

A questão é que, não tem como trabalhar com jQuery com um HTML mal feito. http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, corrigi a marcação.

 

<p><a href='#' onClick='AbreFaq({$a['id']})'><img src='img/setinha.gif' border='0' /> {$a['pergunta']}</a></p>
<p id='faqinfo{$a['id']}'>{$a['resposta']}<br /></p>

como faço agora pra esconder todos os elementos p com ids diferentes com exceção da que eu cliquei?

E dar um focus nele?

 

problema simples mas ta me matando... quarta ta dose... chega feriado... rss

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, corrigi a marcação.

 

<p><a href='#' onClick='AbreFaq({$a['id']})'><img src='img/setinha.gif' border='0' /> {$a['pergunta']}</a></p>
<p id='faqinfo{$a['id']}'>{$a['resposta']}<br /></p>

como faço agora pra esconder todos os elementos p com ids diferentes com exceção da que eu cliquei?

E dar um focus nele?

 

problema simples mas ta me matando... quarta ta dose... chega feriado... rss

 

tem varias maneiras de atingir o que você deseja.

 

1- você pode criar as classes hide e show, e usar jquery para trocar elas nos elementos atraves de um loop no seu onClick event do elemento

<style>
.hide {
display: none;
}
.show {
display: block;
}
</style>

<div id="faq">
<div id="div1"><p id="a" class="hide">SEU CODIGO AQUI</p></div>
<div id="div2"><p id="b" class="hide">SEU CODIGO AQUI</p></div>
</div>

mais tarde posto mais

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.