Usando Jquery para setar valor

3 respostas
F

Oi gente, tenho um select com varios option

<select id="opcao">
   <option value="1">dolar</option>
   <option value="0.65">real</option>
   <option value="1.72">euro</option>
.
.
</select>

So que eu gostaria de setar o atributo selected=“selected” no item com o texto ‘euro’ através de jquery para assim que a pagina fosse carregada, ele seria o item que ja seria mostrado pelo meu ‘select’, como posso fazer isso?

3 Respostas

F

Olá, esses options são gerados dinamicamente? como funciona?

poste o código que gera essa parte por favor.

F

Sim a lista é dinamica, através de php

. . $json = file_get_contents("http://openexchangerates.org/latest.json", true); $decode = json_decode($json, true); $js=$decode["rates"]; foreach ($js as $key => $v) { // This will search in the 2 jsons echo '<option value="'.$v.'">'.$key.'</option>'; . . }
Isso traz todos os valores das moedas junto com seus respectivos valores baseados em dolar dentro de um select.
Queria apenas usar o texto dentro deles para usar jquery e deixar o dolar como ‘selected’ dentro deste select

S

Comparações por texto é sempre ruim, mas você pode tentar assim:

$('#opcao option[name=euro]').attr('selected', true);

Daí no seu laço você acrescenta o atributo name para cada option:

foreach ($js as $key =&gt; $v) { // This will search in the 2 jsons                                                
echo '&lt;option name="'.$key.'" value="'.$v.'"&gt;'.$key.'&lt;/option&gt;';  
.  
.  
}
Criado 27 de dezembro de 2011
Ultima resposta 15 de fev. de 2012
Respostas 3
Participantes 3