0

如何从下拉列表中删除选定的值。

这是我的代码。

@viewbag.empskil = new selectlist(db.skils,"skillid","skillname");

我的查看代码

@html.Dropdown("skill", @viewbag.empskil as  SelectList);

它在下拉列表中显示所有技能一个员工可以拥有多种技能。多个技能正在添加评级。

我只想从下拉列表中删除已经选择的技能。谁能告诉我如何做到这一点

这是屏幕

在此处输入图像描述

我只想让有技能的员工不会在下拉菜单中显示这些技能。任何人都可以告诉我如何完成。

4

1 回答 1

1

听起来您将需要服务器端和客户端代码。在服务器端,获取所有技能列表和员工技能列表,并使用 LINQ“Except”创建一个新列表,例如:

var unusedSkills = db.skils.ToList().Except(db.empSkils);
@viewbag.empskil = new selectlist(unusedSkills,"skillid","skillname");

在客户端,您需要使用 jQuery 在选择技能后将其从列表中删除并将其添加到员工列表中,例如:

$("#button1").click(function(){
    $("#list1 > option:selected").each(function(){
        $(this).remove().appendTo("#list2");
    });
});
于 2013-01-31T15:51:17.783 回答