gpt4 book ai didi

jquery - 多个选择会禁用彼此的选项

转载 作者:行者123 更新时间:2023-12-01 03:42:52 25 4
gpt4 key购买 nike

我正在使用一个很棒的 jQuery 函数,当页面上有多个选择时,它会禁用相等选项值的选择。问题是我不知道它是怎么做的。

JSFiddle 链接:http://jsfiddle.net/Z2yaG/4/

这就是 jQuery 函数的样子:

var prev = -1;
$("select").change(function () {
if ($(this).val() > -1) {
$("select").not(this).find("option[value=" + $(this).val() + "]").attr('disabled', 'disabled');
$("select").not(this).find("option[value=" + previous + "]").removeAttr('disabled');}
else {
$("select").not(this).find("option[value=" + previous + "]").removeAttr('disabled');
}
}).focus(function () {
previous = $(this).val();
});

这是如何工作的???

最佳答案

var previous = -1;
// Setting a previously selected value
$("select").change(function () {
// When any select element is changed
if ($(this).val() > -1) {
// When value is > -1
// Get all selects but not the current one which triggered the change event
$("select").not(this)
.find("option[value=" + $(this).val() + "]").attr('disabled', 'disabled');
// set the current option value to disabled

// Get all selects but not the current one which triggered the change event
$("select").not(this)
.find("option[value=" + previous + "]").removeAttr('disabled');
// Remove the disabled property on previous value
} else {
// Get all selects but not the current one which triggered the change event
$("select").not(this)
.find("option[value=" + previous + "]").removeAttr('disabled');
// Remove the disabled property
}
}).focus(function () {
previous = $(this).val();
// store the current value of the select to previous
});

关于jquery - 多个选择会禁用彼此的选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17180531/

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