Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MVC4 jquery多个下拉列表_C#_Jquery_Asp.net Mvc 4_Jquery Ui_Dropdownlistfor - Fatal编程技术网

C# MVC4 jquery多个下拉列表

C# MVC4 jquery多个下拉列表,c#,jquery,asp.net-mvc-4,jquery-ui,dropdownlistfor,C#,Jquery,Asp.net Mvc 4,Jquery Ui,Dropdownlistfor,我正在使用Jquery构建我的第一个MVC4应用程序,我正在尝试使用我从第一个dropdownlist中选择的项目来获取第二个dropdownlist中的项目列表。在我的上一个下拉列表中,我想使用第二个下拉列表中的选定项作为我的上一个下拉列表 使用我当前的代码,我可以获取数据并返回我的partialView,只需选择一周 我想给WeekChange方法4个参数,selectedCompany,selectedProject,selectedSubProject和week来获取我的数据。一个按钮调

我正在使用Jquery构建我的第一个MVC4应用程序,我正在尝试使用我从第一个dropdownlist中选择的项目来获取第二个dropdownlist中的项目列表。在我的上一个下拉列表中,我想使用第二个下拉列表中的选定项作为我的上一个下拉列表

使用我当前的代码,我可以获取数据并返回我的partialView,只需选择一周

我想给WeekChange方法4个参数,selectedCompany,selectedProject,selectedSubProject和week来获取我的数据。一个按钮调用这个方法是一个更好的主意,因为有很多选择

以下是我的视图(HoursReportViewModel)的一部分:

@Html.DropDownListFor(m=>m.Week,Model.\u listOfWeeks,new{@onchange=“WeekChange(this.value)”)
@Html.Label(“公司:”)
@Html.DataListForListBoxFor(model=>model.selectedCompany.Name,model.\u companys,new Dictionary(){{“class”,“form control”})
@Html.HiddenFor(model=>model.selectedCompany);
@Label(“项目:”)
@DataListForListBoxFor(model=>model.selectedProject.Name,model.\u projects,new Dictionary(){{“class”,“form control”})
@Html.HiddenFor(model=>model.selectedProject);
@Label(“子项目:”)
@Html.DataListForListBoxFor(model=>model.selectedSubProject.Name,model.\u subProjects,new Dictionary(){{“class”,“form control”})
@Html.HiddenFor(model=>model.selectedSubProject);
@Html.Partial(“~/Views/UrenOverzicht/UrenPartial.cshtml”,Model);
脚本:


函数WeekChange(值){
var week=parseInt(值);
var year=@Model.year;
$('周').val(周);
$.ajax({
url:'@url.Action(“HoursReportPartial”,“HoursReport”),
数据:“jaar=”+jaar+”&week=”+week,
键入:“get”,
cache:false,
成功:功能(数据){
$('.rightReportPartial').html(数据);
}
});
}

什么是
DataListForListBoxFor()
?-这不是MVC的一部分。建议您查看并查找级联的工作示例dropdownlists@StephenMueckeDataListForListBox返回MvcHtmlString。这是一个html助手,我已经实现了。DotNetFiddle示例非常好,谢谢!我试图更改它的代码,使其也适用于我,但我无法使其工作:(我仍在排除故障…@StephenMuecke我正试图在我的项目中完成这项工作,但它没有按照我的预期工作。使用我的代码,我只填写了第一个下拉列表,当从该下拉列表中选择项目时,第二个下拉列表未加载。请查看我的DotnetFIDLE和我的代码。我无法在DotnetFIDLE中运行代码,因为我的unitOfWork和我正在使用的其他组件。我希望收到您的来信。创建引用数据库访问组件的DotNetFiddle毫无意义:)我无法真正提供帮助,因为我不知道您的
UnitOfWork
类正在做什么或返回什么。您所能做的就是调试项目中的代码。@StephenMuecke我使用DotNetFiddle中的示例解决了我的问题。非常感谢!
     @Html.DropDownListFor(m => m.Week, Model._listOfWeeks, new { @onchange = "WeekChange(this.value)" })


    @Html.Label("Company:")
@Html.DataListForListBoxFor(model => model.selectedCompany.Name, Model._companies, new Dictionary<string, object>() { { "class", "form-control" } })
@Html.HiddenFor(model => model.selectedCompany);


@Html.Label("Project:")
@Html.DataListForListBoxFor(model => model.selectedProject.Name, Model._projects, new Dictionary<string, object>() { { "class", "form-control" } })
  @Html.HiddenFor(model => model.selectedProject);


@Html.Label("SubProject:")
@Html.DataListForListBoxFor(model => model.selectedSubProject.Name, Model._subProjects, new Dictionary<string, object>() { { "class", "form-control" } })
  @Html.HiddenFor(model => model.selectedSubProject);


@Html.Partial("~/Views/UrenOverzicht/UrenPartial.cshtml", Model);