Asp.net mvc 从数据库的下拉列表中删除项目时遇到问题。使用MVC

Asp.net mvc 从数据库的下拉列表中删除项目时遇到问题。使用MVC,asp.net-mvc,sql-delete,html.dropdownlistfor,Asp.net Mvc,Sql Delete,Html.dropdownlistfor,在我的程序中,管理员可以删除下拉列表中的经理。单击按钮时,我很难获得要传递的实际值。当前它传递一个“null”值。我希望在单击按钮时从数据库中删除该值 我的看法 <div id="addManagerBox" class="admin-home-container-settings boxlike"> <div class="admin-home-itm-settings thinner"> <h2>Add Project Manager</h2

在我的程序中,管理员可以删除下拉列表中的经理。单击按钮时,我很难获得要传递的实际值。当前它传递一个“null”值。我希望在单击按钮时从数据库中删除该值

我的看法

<div id="addManagerBox" class="admin-home-container-settings boxlike">
<div class="admin-home-itm-settings thinner">
    <h2>Add Project Manager</h2>
    @Html.TextBoxFor(m => m.manager, new {@class = "form-control" })
    <a id="btnAddManager" class="btn btn-lg btn-primary margintop">Add Manager</a>
</div>
<div class="admin-home-itm-settings thinner">
    <h2>Delete Project Manager</h2>
    @Html.DropDownListFor(m => Model.selectedManager, Model.AllManagers,"--Select Project Manager--", htmlAttributes: new { @class = "form-control" })
    <button id="btnDeleteManager" class="btn btn-lg btn-danger margintop">Delete Manager</button>
</div>
我的模型视图

public class AppSettingsViewModel
{
    public string manager { get; set; }
    public string purpose { get; set; }

    [Required(ErrorMessage = "Email is required")]
    [Display(Name = "RegisterEmail")]
    public string registerEmail { get; set; }

    [Required(ErrorMessage = "Project Manager is required")]
    [Display(Name = "Manager")]
    public string selectedManager { get; set; }        
    public List<Managers> allManagers { get; set; }

    public List<SelectListItem> AllManagers { get; set; }

    [Required(ErrorMessage = "Purpose is required")]
    [Display(Name = "Purpose")]
    public string selectedPurpose { get; set; }
    public List<Purposes> allPurposes { get; set; }

    public List<SelectListItem> AllPurposes { get; set; }

    [Required(ErrorMessage = "Image History is required")]
    [Display(Name = "ImageHistory")]
    public string ImageHistory { get; set; }

    public List<Questions> allQuestions { get; set; }
    public List<Settings> allSettings { get; set; }


    public AppSettingsViewModel()
    {
        allSettings = new List<Settings>();
        allPurposes = new List<Purposes>();
        allManagers = new List<Managers>();
        allQuestions = new List<Questions>();
    }
}

为下拉列表提供一个与JQuery中使用的内容匹配的id值:

htmlAttributes: new { @class = "form-control", @id = "selectedManager" })
您的JQuery代码是:

manager: $('#selectedManager').val() //Changed this to accept the same named parameter as server side

您的参数不匹配。您的控制器需要
manager
,您正在传递
selectedManager
。试试这个

$.post("/Settings/DeleteManager",
{
   manager: $('#selectedManager').val()
},
function (data) {
   if (data == "True") {}  
   else {}            
});

您可以添加控制器代码吗?添加控制器
manager: $('#selectedManager').val() //Changed this to accept the same named parameter as server side
$.post("/Settings/DeleteManager",
{
   manager: $('#selectedManager').val()
},
function (data) {
   if (data == "True") {}  
   else {}            
});