Asp.net mvc 从MVC局部视图获取选定的DropDownList项
我在局部视图中使用@Html.DropDownList显示银行列表,并在银行分行视图中呈现。 如何在@Html.DropDownList中获取所选银行并在BankBranchModel中填写银行ID 这是我的密码: BankBranchModel:Asp.net mvc 从MVC局部视图获取选定的DropDownList项,asp.net-mvc,asp.net-mvc-4,html-select,Asp.net Mvc,Asp.net Mvc 4,Html Select,我在局部视图中使用@Html.DropDownList显示银行列表,并在银行分行视图中呈现。 如何在@Html.DropDownList中获取所选银行并在BankBranchModel中填写银行ID 这是我的密码: BankBranchModel: public class BankBranchModel : BaseModel { public int? **BankID** { get; set; } public string Name { get; set; }
public class BankBranchModel : BaseModel
{
public int? **BankID** { get; set; }
public string Name { get; set; }
public string Code { get; set; }
public string Phone { get; set; }
public string Address { get; set; }
}
我的部分观点是:
@Html.DropDownList("Banks", Model , "- Please Select -"})
银行分行视图:
@model MvcFirstSample.Models.BankBranchModel
@{
ViewBag.Title = "create";
}
<h2>create</h2>
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<div class="editor-field">
**@Html.Action("GetAllBank", "BankBranch")**
</div>
@model MvcFirstSample.Models.BankBranchModel
@{
ViewBag.Title=“创建”;
}
创造
@使用(Html.BeginForm())
{
@Html.ValidationSummary(true)
**@动作(“GetAllBank”、“BankBranch”)**
返回部分视图的GetAllBanks:
public ActionResult GetAllBank()
{
var Banks = Context.Banks.ToList();
List<BankLookup> BankLookupList = new List<BankLookup>();
var listItems = new List<SelectListItem>();
foreach (var Bank in Banks)
{
listItems.Add(new SelectListItem { Text = Bank.Name, Value = Bank.Id.ToString()});
}
**return PartialView("BankLookup", listItems);**
}
public ActionResult GetAllBank()
{
var Banks=Context.Banks.ToList();
List BankLookupList=新列表();
var listItems=新列表();
foreach(银行中的var银行)
{
添加(新建SelectListItem{Text=Bank.Name,Value=Bank.Id.ToString()});
}
**返回PartialView(“银行查询”,列表项)**
}
这里有一种方法
在你的部分观点中:
@Html.DropDownList("bank_list")
在控制器中,通过绑定ID和值填充列表:
ViewBag.bank_list = new SelectList(listItems, "Text", "Value");
为什么不想使用
ViewBag
?
在局部视图中
可以说:
@Html.DropDownList("listItems",(IEnumerable<SelectListItem>)ViewBag.listItems )
然后为bankid填充输入,假设其id为bankid:
$("#bankid").val(selectedOptionId);
谢谢你的回答,但是我不想使用VIEWBACK。如果是这样的话,你可能想考虑jQuery/JavaScript。它有点牵扯进去,所以你应该多做一些研究。
$("#bankid").val(selectedOptionId);