Javascript或Jquery筛选出所选对象,用于具有相同数据的其他选择

Javascript or Jquery Filter out selected object for other selection with same data

本文关键字:数据 选择 其他 用于 筛选 Jquery 对象 Javascript      更新时间:2023-09-26

我想创建一个表格来选择排名为1、2、3的获胜者。我想问一下,我如何过滤掉其他选择中为其余两个选择元素选择的数据?如果用户选择rank1:Name 2,则Name 2不应显示在rank2、rank3中。如果没有选择任何元素,将显示三个选择的所有名称。例如:

<select id="rank1">
<option value="0">Select One</option>
<option value="1">Name 1</option>
<option value="2" selected>Name 2</option>
<option value="3">Name 3</option>
<option value="4">Name 4</option>
</select>
<select id="rank2">
<option value="0">Select One</option>
<option value="1">Name 1</option>
<option value="3" selected>Name 3</option>
<option value="4">Name 4</option>
</select>
<select id="rank3">
<option value="0">Select One</option>
<option value="1">Name 1</option>
<option value="4">Name 4</option>
</select>

我试图找到解决方案,但没有得到。如果能给一些帮助的提示,我将不胜感激。

对于两个选择框,您可以执行以下操作:

$('#rank1').change(function () {
     if ($('#rank2').val() == $(this).val()) $('#rank2').val('0');
     // Restore all hidden options for second select box
     $('#rank2 option').show(); 
     // Hide option selected in the first select box
     $('#rank2 option[value=' + $(this).val() + ']').hide();
});

你应该能够很容易地将它调整为一个额外的。

这一切都取决于代码的结构。

但是你可以检查.remove()或.hide()

你能告诉我们你用什么结构吗?