javascript - 清除Select2的所有列表项而不是选定的

标签 javascript jquery asp.net-mvc-4 jquery-select2

我有一个级联 Select2 ddl,当我选择主 ddl 时,我毫无问题地填充详细 ddl。另一方面,当我在 master 上选择另一个项目然后单击详细信息时,详细信息 ddl 第一次仅列出先前的项目仅一毫秒。因此,当主 ddl 的选定索引更改时,我需要清除除选定项目之外的所有列表项。是否可以?我已尝试了以下所有解决方法,但它们仅清除所选项目。有什么想法吗?

$('#ProjectId').select2('data', null);
$('#ProjectId').select2('data', { id: null, text: null })
$('#ProjectId').empty();
$('#ProjectId').val(null).trigger("change");
$("#ProjectId").remove();
$('#ProjectId').val('').trigger('change');


@Html.DropDownListFor(m => m.ProjectId, Enumerable.Empty<SelectListItem>(), "Select")


$(document).ready(function () {

    var issueType = $("#ProjectId");

    issueType.select2({
        allowClear: true,
        ajax: {
            url: '/Controller/GetProjects',
            dataType: 'json',
            delay: 250,
            data: function (params) {
                return {
                    query: params.term, //search term
                    page: params.page,
                    id: selectedMasterId
                };
            },
            processResults: function (data, page) {
                var newData = [];
                $.each(data, function (index, item) {
                    newData.push({
                        id: item.Id,
                        text: item.Description
                    });
                });
                return { results: newData };
            },
            cache: true
        },
        escapeMarkup: function (markup) { return markup; }, // let our custom formatter work
    }); 

});


$('#MasterId').change(function () {

    selectedMasterId = $(this).val();

        $('#ProjectId').select2('val', '');
        $('#ProjectId').select2('data', null);
    }
});

最佳答案

$('#id').empty().trigger("change");

其中“#id”是 select2 元素的 jQuery 选择器。

关于javascript - 清除Select2的所有列表项而不是选定的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40583631/

相关文章:

javascript - 嵌套 V-For 事件类

javascript - 制作一个 "Load More"按钮,显示我博客上的另外 2 篇文章

javascript - 使用 `<span>` 技巧检测文本宽度时不包括空格

javascript - $http.post 上的预加载器(多步骤形式)

c# - 在 MVC(4) 中动态更改 css 的常见做法

c# - 当 id 具有文件扩展名时,ASP.NET MVC 4 路由不起作用

javascript - 我如何将数据从 ReactJS 提交表单传递到 AdonisJS

PHP 制作一个简单的计算器 - 代码不起作用

javascript - 浏览器是否会批量处理大量ajax请求?

c# - 复杂列表子项的 ASP.NET MVC 5 编辑选项