gpt4 book ai didi

jquery - 从多选下拉列表中的 optgroup 选项中仅选择一个

转载 作者:太空宇宙 更新时间:2023-11-03 21:39:32 25 4
gpt4 key购买 nike

我有这样的下拉

<select multiple="multiple">
<optgroup label='name1'>
<option value="1">First</option>
<option value="2">Second</option>
<option value="3">Third</option>
</optgroup>

<optgroup label='name2'>
<option value="1">First</option>
<option value="2">Second</option>
<option value="3">Third</option>
</optgroup>
<select>

这是多选下拉菜单,但我应该只从每个选项组选项中选择一个选项。

例如。如果为“name1”选择选项“First”,则“name1”optgroup 选项不应选择“second”、“third”。

最佳答案

试试这个:

var memoryOne;
var memoryTwo;
$("option").mouseover(function () {
var selectedOne = $("optgroup:nth-of-type(1)").children("option:selected").index();
var selectedTwo = $("optgroup:nth-of-type(2)").children("option:selected").index();
memoryOne = selectedOne;
memoryTwo = selectedTwo;
}).click(function () {
var theSelectedIndex = $(this).index();
var theParentIndex = $(this).parent().index();
setTimeout(function () {
clickEvent(theSelectedIndex, theParentIndex, memoryOne, memoryTwo);
}, 1);
});

function clickEvent(passedIndex, parentIndex, memoryOne, memoryTwo) {
var selectionOne = memoryOne;
var selectionTwo = memoryTwo;
var theParent = $("optgroup:eq(" + parentIndex + ")");
var theOption = $("optgroup:eq(" + parentIndex + ") option:eq(" + passedIndex + ")");
var theGrandParent = $("select");
theParent.find("option:not(option:eq(" + passedIndex + "))").prop("selected", false);

if (parentIndex == 0) {
$("optgroup:not(optgroup:eq(" + parentIndex + "))").children("option:eq(" + selectionTwo + ")").prop("selected", true);
} else if (parentIndex == 1) {
$("optgroup:not(optgroup:eq(" + parentIndex + "))").children("option:eq(" + selectionOne + ")").prop("selected", true);
}
}

演示:http://jsfiddle.net/thauwa/ee8VH/

关于jquery - 从多选下拉列表中的 optgroup 选项中仅选择一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24529154/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com