Javascript 如何在用户可以使用Java脚本选择或取消选择HTML的情况下动态删除选中的下拉值?

Javascript 如何在用户可以使用Java脚本选择或取消选择HTML的情况下动态删除选中的下拉值?,javascript,jquery,html,Javascript,Jquery,Html,选定的下拉列表值将更改。我需要数据动态选择和取消选择下拉列表。另外,从“整”值中未选择的值仅在“其他”下拉列表中出现。 示例代码: $(文档).ready(函数(){ })) 标题 映射 滴落物 挑选 电子邮件地址 打招呼 名字 姓 性别 单位 下拉菜单 挑选 电子邮件地址 打招呼 名字 姓 性别 单位 下拉菜单 挑选 电子邮件地址 打招呼 名字 姓 性别 单位 下降 挑选 电子邮件地址 打招呼 名字 姓 性别 单位 下拉列表 挑选 电子邮件地址 打招呼 名字 姓 性别 单位 下降 挑选 电子

选定的下拉列表值将更改。我需要数据动态选择和取消选择下拉列表。另外,从“整”值中未选择的值仅在“其他”下拉列表中出现。 示例代码: $(文档).ready(函数(){

}))


标题
映射
滴落物
挑选
电子邮件地址
打招呼
名字
姓
性别
单位
下拉菜单
挑选
电子邮件地址
打招呼
名字
姓
性别
单位
下拉菜单
挑选
电子邮件地址
打招呼
名字
姓
性别
单位
下降
挑选
电子邮件地址
打招呼
名字
姓
性别
单位
下拉列表
挑选
电子邮件地址
打招呼
名字
姓
性别
单位
下降
挑选
电子邮件地址
打招呼
名字
姓
性别
单位
在执行以下步骤后,所选下拉列表值发生更改:

  • 下拉列表中选择公司进入电子邮件地址
  • dropdownB
    ->公司中选择
现在我们可以看到
下拉列表a
值已更改。但是我选择的是
dropdownA
中的
Email\u Address

请纠正我哪里错了。下面是一个演示:

在您的代码中:

$(document).ready(function () {

    var hideOptions = function () {
        var $select = $('select');
        $select.find('option').show();
        $select.each(function () {
            var $this = $(this);
            var value = $this.val();
            var $options = $this.parents('table').find('select').not(this).find('option');
            var $option = $options.filter('[value="' + value + '"]');
            if (value) {
                $option.hide();
                $option.each(function () {
                    if (this.defaultSelected) {
                        $(this).parent('select').val('');
                    }
                }, this);
            }
        });
    }

    hideOptions();

    $('select').on('change', function () {
        hideOptions();
    });
});
加载后,它将首先从默认选定项中删除选项。这是由$('select')之前的隐藏操作完成的。更改

但它与

$option.each(function () {
     if (this.defaultSelected) {
         $(this).parent('select').val('');
      }
}, this);
此代码用于在其他用户选择时将defaultselected值设置为“”。由于预移除操作,这将永远不会发生,您需要移除此零件,或者移除预移除操作,然后它就会工作


  • 第一个选项已经排除了other select中弹出的已选选项,而第二个选项仍然是该选项,但当该值被other select元素选中时,默认值变为空,请选择一个符合您意图的选项。

    请在此处发布您的代码,而不是试图通过不适当地将内容格式化为代码来绕过要求。我需要将未选择的下拉列表值添加到其他下拉列表中。删除不适用的值并过滤下拉列表。这意味着当我取消选择下拉列表时,这些值会添加到其他下拉列表中。我相信我修改的两个示例都会将未选择的值添加到其他下拉列表中?
    $(document).ready(function () {
    
        var hideOptions = function () {
            var $select = $('select');
            $select.find('option').show();
            $select.each(function () {
                var $this = $(this);
                var value = $this.val();
                var $options = $this.parents('table').find('select').not(this).find('option');
                var $option = $options.filter('[value="' + value + '"]');
                if (value) {
                    $option.hide();
                    $option.each(function () {
                        if (this.defaultSelected) {
                            $(this).parent('select').val('');
                        }
                    }, this);
                }
            });
        }
    
        hideOptions();
    
        $('select').on('change', function () {
            hideOptions();
        });
    });
    
    $option.each(function () {
         if (this.defaultSelected) {
             $(this).parent('select').val('');
          }
    }, this);