javascript - 如何链接两个选定的字段并相互删除选项

标签 javascript jquery jquery-chosen

我有两个具有相同选项的字段。我想确保当用户从其中一个选项中选择一个选项时,相反的字段将删除相同的选项。

因此,如果用户选择 T. Edson 作为收件人,则此选项将在CCs 字段中删除。

enter image description here

我尝试了以下方法,正如有人所说的 here但似乎不起作用。

    function checkAddressFields() {
        var recipientField = $('#id_recipient');
        var ccsField = $('#id_ccs');
        console.log("Removing duplicate");
        $("#id_ccs option[value='"+recipientField.val()+"']").remove();
        ccsField.trigger("chosen:updated");
    }
    $('#id_recipient').on('change', checkAddressFields);
    $('#id_ccs').on('change', checkAddressFields);

最佳答案

试试这个例子..

$select = $('.select');
$select.on('change', function() {
  var val = $(this).val();
  $notThis = $select.not($(this));
  $notThis.find('option').show();
  $notThis.find('option[value=' + val + ']').hide();
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<select class="select">
  <option>Select rec</option>
  <option value="option1">Option 1</option>
  <option value="option2">Option 2</option>
  <option value="option3">Option 3</option>
  <option value="option4">Option 4</option>
  <option value="option5">Option 5</option>
</select>

<select class="select">
  <option>Select cc</option>
  <option value="option1">Option 1</option>
  <option value="option2">Option 2</option>
  <option value="option3">Option 3</option>
  <option value="option4">Option 4</option>
  <option value="option5">Option 5</option>
</select>

关于javascript - 如何链接两个选定的字段并相互删除选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37805799/

相关文章:

javascript - Canvas 横跨整个页面

javascript - 如何以编程方式在单击按钮时将三个 js 中的网格聚焦?

javascript - jquery追加输入字段并发布

jquery - 需要关于 jquery.chosen by Harvethq 中的一条奇怪指令的解释

javascript - 辅助功能 (JAWS) - 带有 jQ​​uery 选择库的下拉列表

javascript - Soundcloud JS SDK - 如果应用程序安装在 iOS 上,则 SC.Connect() 回调窗口无法关闭

javascript - 无需清除缓存即可管理内容

jquery - 完全卸载 jquery ui 对话框

javascript - 如何使用 jQuery/UI 的对话框阻止对话框 ("open") 调用

javascript - 使用 localStorage 变量更新选择的多选字段