Mam wybrany element zawinięty w element span. Nie wolno mi używać identyfikatora wyboru, ale wolno mi używać identyfikatora zakresu. Próbuję napisać funkcję javascript / jquery, w której dane wejściowe to liczba i, która jest jedną z wartości opcji select. Funkcja zmieni odpowiednią opcję na wybraną.
<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>
Napisałem coś następująco (to nie do końca działa, dlatego piszę to pytanie):
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');
}
Dzięki!
źródło
i
, wybierz i-tyoption
wselect
. OP nie próbował filtrować opcji.Aby uzyskać wartość, użyj tego:
<select id ="ari_select" onchange = "getvalue()"> <option value = "1"></option> <option value = "2"></option> <option value = "3"></option> <option value = "4"></option> </select> <script> function getvalue() { alert($("#ari_select option:selected").val()); } </script>
spowoduje to pobranie wartości
źródło
function select_option(index) { var optwewant; for (opts in $('#span_id').children('select')) { if (opts.value() = index) { optwewant = opts; break; } } alert (optwewant); }
źródło
$("#h273yrjdfhgsfyiruwyiywer").children('[value="' + i + '"]').prop("selected", true);
źródło