asp.net-mvc – 使用下拉列表过滤MVC中的结果
发布时间:2020-12-16 07:18:27 所属栏目:asp.Net 来源:网络整理
导读:我有一个返回表的MVC Web应用程序.我想在视图页面中添加一个下拉列表,将表格过滤到所选年份.什么是正确的方法? 我正在创建一个我正在使用JQuery填充的下拉列表.我创建了一个onChange命令来回发,但我不知道如何在控制器中获取下拉列表的选定值. 以下是我的代
我有一个返回表的MVC Web应用程序.我想在视图页面中添加一个下拉列表,将表格过滤到所选年份.什么是正确的方法?
我正在创建一个我正在使用JQuery填充的下拉列表.我创建了一个onChange命令来回发,但我不知道如何在控制器中获取下拉列表的选定值. 以下是我的代码: 在控制器中: public ActionResult Index() { int year = 2012; var vu_Estimates = dbBudget.vu_Estimates.OrderByDescending(o => o.Expense).ThenBy(o => o.CategoryGroupSortOrder).ThenBy(o => o.SortOrder).Where(o => o.Year == year).ToList(); return View(vu_Estimates); } [AcceptVerbs(HttpVerbs.Post)] public ActionResult Index(FormCollection formCollection) { int year = 2012; var vu_Estimates = dbBudget.vu_Estimates.OrderByDescending(o => o.Expense).ThenBy(o => o.CategoryGroupSortOrder).ThenBy(o => o.SortOrder).Where(o => o.Year == year).ToList(); return View(vu_Estimates); } 在视图中,我有以下内容: <script type="text/javascript"> $(document).ready(function () { $.post("/Estimate/PopulateYears/",{ Year: $(this).val() },function (data) { populateDropdown($("#ddlYears"),data); }); }); function populateDropdown(select,data) { select.html(''); $.each(data,function (id,option) { select.append($('<option></option>').val(option.value).html(option.name)); }); } </script> <h2>Estimates List</h2> <div> <% using (Html.BeginForm()) { %> <select id="ddlYears" onchange="this.form.submit();"></select> | <%: Html.ActionLink("Create New Year of Estimates","CreateEstimates","Estimate") %> <%} %> </div> <table> <tr> <th></th> <th> EstimateID </th> <th> CategoryID </th> <th> Year </th> <th> EstimateAmount </th> <th> CategoryName </th> <th> SortOrder </th> <th> CategoryGroupSortOrder </th> <th> Expense </th> </tr> <% foreach (var item in Model) { %> <tr> <td> <%: Html.ActionLink("Edit","Edit",new { id=item.EstimateID }) %> | <%: Html.ActionLink("Delete","Delete",new { id=item.EstimateID })%> </td> <td> <%: item.EstimateID %> </td> <td> <%: item.CategoryID %> </td> <td> <%: item.Year %> </td> <td> <%: item.EstimateAmount %> </td> <td> <%: item.CategoryName %> </td> <td> <%: item.SortOrder %> </td> <td> <%: item.CategoryGroupSortOrder %> </td> <td> <%: item.Expense %> </td> </tr> <% } %> </table> <p> <%: Html.ActionLink("Create New","Create") %> </p> 解决方法
首先,给你的下拉列表一个名字:
<div> <% using (Html.BeginForm()) { %> <select id="ddlYears" name="Years" onchange="this.form.submit();"></select> | <%: Html.ActionLink("Create New Year of Estimates","Estimate") %> <%} %> </div> 然后使用FormCollection对象检索值: [AcceptVerbs(HttpVerbs.Post)] public ActionResult Index(FormCollection formCollection) { int year = Convert.ToInt32(formCollection["Years"]); var vu_Estimates = dbBudget.vu_Estimates.OrderByDescending(o => o.Expense).ThenBy(o => o.CategoryGroupSortOrder).ThenBy(o => o.SortOrder).Where(o => o.Year == year).ToList(); return View(vu_Estimates); } 这样的事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 数据绑定ASP.NET ListItem列表DropDownList问题
- asp.net-mvc – 将Orchard CMS部署到共享主机的正确方法是什
- asp.net-mvc – ASP.NET MVC Html.RadioButton异常
- asp.net-mvc – asp.net mvc从包中排除css文件
- 为熟悉ASP.NET Web表单开发的人建议MVC3的周末学习轨道
- asp.net – 不能在aspx页面的部分使用Response.Write?
- ASP.NET – 如何从数据库有效地创建动态用户特定菜单
- asp.net-mvc – ViewModel中的MVC3 RouteUrl
- asp.net-mvc – ASP.NET简单会员提供者?
- asp.net-mvc – 未找到路径’/ Home’的控制器或未实现ICon
推荐文章
站长推荐
- asp.net – 最小长度的文本框验证器
- asp.net-mvc – 无法通过kendo上传从一个视图到另
- ASP.NET本地化
- asp.net – 如何将aspx webform上的所有控件转换
- asp.net-mvc – 实现MVC 5 IAuthenticationFilte
- asp.net-mvc – 如何在asp.net中使用mvc构建购物
- asp.net-mvc – 如何使用ASP.NET MVC,WebAPI和ME
- asp.net-mvc-3 – 内部模型的自定义模型绑定器
- .net – SignalR – connection.hubName未定义
- asp.net-mvc – 与MVC一起使用的学习实体框架,首
热点阅读