0

我在部分视图中使用@Html.DropDownList 来显示银行列表并将其呈现在银行分行视图中。如何在 @Html.DropDownList 中获取所选银行并在 BankBranchModel 中填写 BankId 。

这是我的代码:

银行分行模型:

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>

GetAllBanks 用于返回 Partial 视图:

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);**
        }
4

2 回答 2

1

为什么你不想使用ViewBag?在你的 Partial View你可以说:

@Html.DropDownList("listItems",(IEnumerable<SelectListItem>)ViewBag.listItems )

,然后用于Jquery获取所选项目:

      var selectBanks= $("#listItems");

        var selectedOptionId = selectBanks.find("option:selected").val();

然后填充 bankid 的输入,假设它具有 bankid 的 id:

     $("#bankid").val(selectedOptionId);
于 2013-05-19T23:50:48.493 回答
0

这是一种方法...

在您的部分视图中:

@Html.DropDownList("bank_list")

在您的控制器中,通过绑定 id 和值来填充列表:

ViewBag.bank_list = new SelectList(listItems, "Text", "Value");
于 2013-05-19T03:55:48.187 回答