【发布时间】:2021-02-02 08:39:54
【问题描述】:
我见过类似的问题,但我的问题不同。
所以我有这前 2 个下拉菜单(数据是从我的数据库中选择的)和另一个属性为 multiple 的下拉菜单,
现在我的代码适用于前 2 个下拉菜单,但是当涉及到 multiple 下拉菜单时,它不起作用。
这是我的下拉菜单;
<select class="custom-select" name="option_one">
<option>test1</option>
<option>test2</option>
<select class="custom-select" name="option_two">
<option>test1</option>
<option>test2</option>
<select id="multiple" class="custom-select" name="option_three[]" multiple="multiple">
<option>test1</option>
<option>test2</option>
这是我的 javascript
$(document).ready(function() {
function intializeSelect() {
$('.custom-select').each(function(box) {
var value = $('.custom-select')[box].value;
if (value) {
$('.custom-select').not(this).find('option[value="' + value + '"]').hide();
}
});
};
intializeSelect();
$('.custom-select').on('change', function(event) {
$('.custom-select').find('option').show();
});
});
【问题讨论】:
-
我已尝试修复您的缩进,但缺少
},因此不清楚您的代码应该是什么。不太可能这是没有开始的递归,所以在缩进上猜到了。请更新,最好使用完整的 sn-p[<>]来演示该问题。 -
@freedomn-m 完成编辑
-
您的所有选项(如提供的)都没有值,因此
$('.custom-select')[box].value始终为空白。请参阅minimal reproducible examplesn-p。 -
这是一个解决两件事的小提琴:没有值/没有从更改事件中调用 init(尽管不清楚这是否是一个错误)。除了“它适用于 2”和“它不适用于 3”之外,目前还不清楚您要尝试 实现什么。根据您的要求,什么是“工作”?无论如何,这里是:jsfiddle.net/52gcohmk
标签: javascript php html jquery css