Substituindo texto dentro de um <option>

844 views
Skip to first unread message

Eric Saboia

unread,
Sep 23, 2008, 4:36:50 PM9/23/08
to jQuery (Brasil)
Olá...
estou tentando substituir parte de um texto dentro de um <option> e
não consigo. Segue o exemplo:

function exibe(idSelect) {
var idOption = $("#"+id+" option:selected").attr('id');
$("#span_"+idOption).html('[-]');
}

<select ondblclick='exibe(this.id)' name="listServicos1"
id="listServicos1" multiple="multiple">
<option id='1'><span id='span_1'>[+]</span> Testando</option>
</select>

Se tento dar um alert .size() ele retorna 0, ou seja, não encontra o
span_1 dentro do option.. como eu poderia fazer?

Ah, mais um detalhe... fiz essa gambiara do ondbclick posi botando
direto no option ele so ta funcionando no FF :(

Victor Sobreira

unread,
Sep 23, 2008, 10:25:59 PM9/23/08
to jque...@googlegroups.com
coloque o value em vez de id que provavelmente vai pegar.

2008/9/23 Eric Saboia <esa...@gmail.com>



--
Atenciosamente,
Victor Sobreira

Celular: (88) 8812-6922 / (85) 8719-3391
Msn / Gtalk: vict...@gmail.com

Eric Saboia

unread,
Sep 24, 2008, 7:07:30 AM9/24/08
to jQuery (Brasil)
Acho que você não entendeu... não e do option que eu estou tentando
mudar o conteúdo... e sim do <span> que tem dentro dele.. pois só
quero alterar uma parte do texto que é criado dinâmicamente.

Obrigado.

On 23 set, 23:25, "Victor Sobreira" <victor...@gmail.com> wrote:
> coloque o value em vez de id que provavelmente vai pegar.
>
> 2008/9/23 Eric Saboia <esab...@gmail.com>
>
>
>
>
>
> > Olá...
> > estou tentando substituir parte de um texto dentro de um <option> e
> > não consigo. Segue o exemplo:
>
> > function exibe(idSelect) {
> >        var idOption = $("#"+id+" option:selected").attr('id');
> >        $("#span_"+idOption).html('[-]');
> > }
>
> > <select ondblclick='exibe(this.id)' name="listServicos1"
> > id="listServicos1" multiple="multiple">
> > <option id='1'><span id='span_1'>[+]</span> Testando</option>
> > </select>
>
> > Se tento dar um alert .size() ele retorna 0, ou seja, não encontra o
> > span_1 dentro do option.. como eu poderia fazer?
>
> > Ah, mais um detalhe... fiz essa gambiara do ondbclick posi botando
> > direto no option ele so ta funcionando no FF :(
>
> --
> Atenciosamente,
> Victor Sobreira
>
> Celular: (88) 8812-6922 / (85) 8719-3391
> Msn / Gtalk: victor...@gmail.com

Eric Saboia

unread,
Sep 24, 2008, 7:10:03 AM9/24/08
to jQuery (Brasil)
Acho que você não entendeu... eu não quero pegar o conteúdo do
<option> e sim do <span> que criei dentro dele, pois só quero alterar
uma parte do texto [+] ou [-] visto que o resto é carregado
dinâmicamente do banco.

Obrigado

On 23 set, 23:25, "Victor Sobreira" <victor...@gmail.com> wrote:
> coloque o value em vez de id que provavelmente vai pegar.
>
> 2008/9/23 Eric Saboia <esab...@gmail.com>
>
>
>
>
>
> > Olá...
> > estou tentando substituir parte de um texto dentro de um <option> e
> > não consigo. Segue o exemplo:
>
> > function exibe(idSelect) {
> >        var idOption = $("#"+id+" option:selected").attr('id');
> >        $("#span_"+idOption).html('[-]');
> > }
>
> > <select ondblclick='exibe(this.id)' name="listServicos1"
> > id="listServicos1" multiple="multiple">
> > <option id='1'><span id='span_1'>[+]</span> Testando</option>
> > </select>
>
> > Se tento dar um alert .size() ele retorna 0, ou seja, não encontra o
> > span_1 dentro do option.. como eu poderia fazer?
>
> > Ah, mais um detalhe... fiz essa gambiara do ondbclick posi botando
> > direto no option ele so ta funcionando no FF :(
>
> --
> Atenciosamente,
> Victor Sobreira
>
> Celular: (88) 8812-6922 / (85) 8719-3391
> Msn / Gtalk: victor...@gmail.com

Victor Sobreira

unread,
Sep 24, 2008, 7:52:02 AM9/24/08
to jque...@googlegroups.com
entao faz isso

$('span#id').html(); // pega o conteudo que tem dentro
$('span#id').html('[+]'); // coloca o valor

2008/9/24 Eric Saboia <esa...@gmail.com>
Msn / Gtalk: vict...@gmail.com

Paulo Diovani

unread,
Sep 24, 2008, 10:17:49 AM9/24/08
to jque...@googlegroups.com
Eric, você quer alterar o texto de um span dentro do option
selecionado ou algum outro especifico?

Porque se for o selecionado, isso deve funcionar:

//adiciona '[+]' ao final do texto do <span> dentro do <option> selecionado
$('select#listServicos1 option:selected span').append( '[+]' );

E se for para substituir, basta utilizar replace:
$('select#listServicos1 option:selected span').html(
$('select#listServicos1 option:selected span').html().replace( '[-]', '[+]' )
);

PS.: não testei nenhum dos dois...


2008/9/23 Eric Saboia <esa...@gmail.com>:
--
Paulo Diovani
pa...@diovani.com
+55 51 8146 5413
___________________
http://www.diovani.com

Victor Sobreira

unread,
Sep 24, 2008, 10:39:22 AM9/24/08
to jque...@googlegroups.com
Muito boa a idea Paulo.
Mais acho que não da certo.

2008/9/24 Paulo Diovani <diov...@gmail.com>

Paulo Diovani

unread,
Sep 24, 2008, 10:41:24 AM9/24/08
to jque...@googlegroups.com
> Muito boa a idea Paulo.
> Mais acho que não da certo.

Se não der certo é questão de alguns ajustes e testes, apenas...
e claro, depende do resultado que ele quer (eu confesso que não
entendi direito).

Mas vamos deixar o Eric se pronunciar novamente.

Eric Saboia

unread,
Sep 24, 2008, 12:29:00 PM9/24/08
to jQuery (Brasil)
Deu certo... usei replace direto no option.. o span só tava ali porque
eu queria trocar só o [+] ou [-] e não a string inteira.. Não pensei
no replace ;)

Ah, paulo... tou querendo conversar com você mas não posso mais entrar
no MSN no meu novo trabalho... vo ver se consigo instalar o gtalk..

valeu ai!

On 24 set, 11:17, "Paulo Diovani" <diovan...@gmail.com> wrote:
> Eric, você quer alterar o texto de um span dentro do option
> selecionado ou algum outro especifico?
>
> Porque se for o selecionado, isso deve funcionar:
>
> //adiciona '[+]' ao final do texto do <span> dentro do <option> selecionado
> $('select#listServicos1 option:selected span').append( '[+]' );
>
> E se for para substituir, basta utilizar replace:
> $('select#listServicos1 option:selected span').html(
>   $('select#listServicos1 option:selected span').html().replace( '[-]', '[+]' )
> );
>
> PS.: não testei nenhum dos dois...
>
> 2008/9/23 Eric Saboia <esab...@gmail.com>:

Paulo Diovani

unread,
Sep 24, 2008, 12:44:56 PM9/24/08
to jque...@googlegroups.com
> Ah, paulo... tou querendo conversar com você mas não posso mais entrar
> no MSN no meu novo trabalho... vo ver se consigo instalar o gtalk..

Beleza, acabei de adicionar esse teu gmail nos contatos.

Reply all
Reply to author
Forward
0 new messages