Como obter vários valores de caixa de seleção usando o jQuery?
jquery
multi-select
DEVOPS
fonte
fonte
Text 1
vez de valor? substituir.val()
com.text()
?null
vez de uma matriz vazia. Isso significa que, se você estiver programaticamente adicionando um valor selecionado, terá que fazer alguns malabarismos para acertar.var selectedValues = $('#multipleSelect').val() || [];
também vale a pena notar que ele retorna uma série de strings. Eu estava comparando com um número inteiro e não obtendo correspondências, então eu adicionei um.toString()
.Você também pode usar a função js map:
E então você pode obter qualquer propriedade do
option
elemento:fonte
el
como um objeto jQuery para cada opção. Apenas saia do DOM quando não for muito estranho. Você pode mudar$(el).val()
para apenasel.value
. Obviamente, se você está acostumado ao jQuery ou deseja pegar dados ou atributos como seus outros exemplos, o jQuery não está prejudicando ninguém.Mais uma abordagem para esse problema. A matriz selecionada terá os índices como valores da opção e cada item da matriz terá o texto como valor.
por exemplo
se as opções 1 e 2 estiverem selecionadas.
a matriz selecionada será:
fonte
Apenas por uma linha
Saída: ["texto1", "texto2"]
Saída: ["valor1", "valor2"]
Se você usar .join ()
Saída: texto1, texto2, texto3
fonte
Código HTML:
Código JQuery:
Espero que funcione
fonte
$('#multiple').find(':selected')
@PrabhagaranObter valores selecionados no separador de vírgulas
fonte
Basta usar isso
fonte