span要素でラップされたselect要素があります。選択IDの使用は許可されていませんが、スパンIDの使用は許可されています。入力が数値iであるjavascript / jquery関数を記述しようとしています。これは、selectのオプションの値の1つです。この関数は、関連するオプションを選択済みにします。
<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>
私は次のように書きました(これは完全に機能しないため、この質問を投稿しています)。
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');
}
ありがとう!