<html>
<body>
<select name="lstparameters">
<optgroup value="100" label="Swedish Cars">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
</optgroup>
<optgroup value="101" label="German Cars">
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</optgroup>
</select>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
如何从 javascript 获取 optgroup 值?我想获取 100 和 101 值。
对于像我这样想要获得 的人optgroup label,selected option请执行以下操作:
document.querySelector('select[name="lstparameters"] option:checked').parentElement.label
Run Code Online (Sandbox Code Playgroud)
使用 aselect和 anid可以简化选择器:
document.querySelector('#lstparameters option:checked').parentElement.label
Run Code Online (Sandbox Code Playgroud)
您可以获取 optgroup 元素并读取value属性
var values = Array.from(document.querySelectorAll('select[name="lstparameters"] > optgroup')).map(el => el.getAttribute('value'));
alert(values);
//if you want old browser support
var values = [].slice.call(document.querySelectorAll('select[name="lstparameters"] > optgroup')).map(function(el) {
return el.getAttribute('value')
});
alert(values);Run Code Online (Sandbox Code Playgroud)
<select name="lstparameters">
<optgroup value="100" label="Swedish Cars">
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
</optgroup>
<optgroup value="101" label="German Cars">
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</optgroup>
</select>Run Code Online (Sandbox Code Playgroud)
您可以使用该.closest()功能来确定所选的optgroup
$(function() {
var selected = $('select option:selected');
alert(selected.closest('optgroup').attr('value'));
});Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<html>
<body>
<select name="lstparameters">
<optgroup value="100" label="Swedish Cars">
<option value="volvo">Volvo</option>
<option value="saab" selected>Saab</option>
</optgroup>
<optgroup value="101" label="German Cars">
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</optgroup>
</select>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10268 次 |
| 最近记录: |