No meu HTML, eu tenho um <select>
com três <option>
elementos. Eu quero usar o jQuery para verificar o valor de cada opção em um Javascript var
. Se um corresponder, desejo definir o atributo selecionado dessa opção. Como eu faria isso?
javascript
jquery
html
llihttocs
fonte
fonte
$('#myselectid').val()
Respostas:
JavaScript de baunilha
Usando JavaScript antigo simples:
jQuery
Mas se você realmente deseja usar o jQuery:
Mostrar snippet de código
jQuery - Usando atributos de valor
Caso suas opções tenham atributos de valor que diferem do conteúdo de texto e você deseje selecionar via conteúdo de texto:
Demo
Mas se você tiver configurado acima e desejar selecionar por valor usando o jQuery, poderá fazer o seguinte:
DOM moderno
Para os navegadores que suportam
document.querySelector
e aHTMLOptionElement::selected
propriedade, esta é uma maneira mais sucinta de realizar esta tarefa:Demo
Knockout.js
Demo
Polímero
Demo
Angular 2
Nota: isso não foi atualizado para a versão estável final.
Demo
Vue 2
Demo
fonte
document.evaluate(".//select[@id='sel']/option[text()='Fish']", document.body, null, 9, null).singleNodeValue.selected = true;
Nenhum dos exemplos usando jquery aqui está realmente correto, pois deixará o select exibindo a primeira entrada, mesmo que o valor tenha sido alterado.
A maneira correta de selecionar o Alasca e fazer com que o select mostre o item certo conforme selecionado usando:
Com jquery seria:
fonte
Você pode alterar o valor do elemento select, que altera a opção selecionada para aquela com esse valor, usando JavaScript:
DEMO
fonte
Marcação
jQuery
Demo
fonte
Desejo alterar o valor da opção selecionada e o conteúdo do texto (o que vemos) para 'Manga'.
O código mais simples que funcionou está abaixo:
Espero que ajude alguém. Boa sorte.
Voto se isso te ajudou.
fonte
Teste esta demonstração
Selecionando Opção com base em seu valor
Selecionando Opção com base em seu texto
HTML de suporte
fonte
Excelentes respostas - aqui está a versão D3 para quem procura:
fonte
Eu usei quase todas as respostas postadas aqui, mas não me sinto à vontade com isso, então eu passo um passo adiante e encontrei uma solução fácil que se adapta às minhas necessidades e que vale a pena compartilhar com vocês.
Em vez de iteração em todas as opções ou usando o JQuery, você pode usar o JS principal em etapas simples:
Exemplo
Portanto, você deve saber o valor da opção a ser selecionada.
Como usar?
Seus comentários são bem-vindos. :) AzmatHunzai.
fonte
Depois de muita pesquisa, tentei @kzh na lista de seleção, onde apenas
option
o texto interno não évalue
atribuído, este código com base na resposta selecionada, usei-o para alterar a opção de seleção de acordo com a página atualurl
neste formatohttp://www.example.com/index.php?u=Steve
Isso mantém os
url
parâmetros mostrados como selecionados para torná-lo mais amigável e o visitante sabe qual página ou perfil está visualizando no momento.fonte
Eu usei isso depois de atualizar um registro e alterei o estado da solicitação via ajax, depois fiz uma consulta com o novo estado no mesmo script e o coloquei no elemento de marca de seleção new state para atualizar a exibição.
Espero que isso seja útil.
fonte
Versão Vanilla.JS ligeiramente mais limpa. Supondo que você já tenha corrigido a
nodeList
falta.forEach()
:Somente:
fonte