Eu tenho um elemento select envolvido por um elemento span. Não tenho permissão para usar o id de seleção, mas tenho permissão para usar o id do span. Estou tentando escrever uma função javascript / jquery na qual a entrada é um número i, que é um dos valores das opções do select. A função mudará a opção relevante para selecionada.
<span id="span_id">
<select id="h273yrjdfhgsfyiruwyiywer" multiple="multiple">
<option value="1">cleaning</option>
<option value="2">food-2</option>
<option value="3">toilet</option>
<option value="4">baby</option>
<option value="6">knick-knacks</option>
<option value="9">junk-2</option>
<option value="10">cosmetics</option>
</select>
</span>
Escrevi algo da seguinte forma (não funciona completamente, e é por isso que estou postando esta pergunta):
function select_option(i) {
options = $('#span_id').children('select').children('option');
//alert(options.length); //7
//alert(options[0]); //[object HTMLOptionElement]
//alert(options[0].val()); //not a jquery element
//alert(options[0].value); //1
//the following does not seem to work since the elements of options are DOM ones not jquery's
option = options.find("[value='" + i + "']");
//alert(option.attr("value")); //undefined
option.attr('selected', 'selected');
}
Obrigado!
fonte
i
, selecione o enésimooption
noselect
. OP não estava tentando filtrar as opções.Para obter o valor, basta usar isto:
isto irá buscar os valores
fonte
fonte
fonte