如何在html视图中从数据库获取Dropdownlist数据

时间:2017-06-08 07:21:16

标签: c# html sql asp.net-mvc asp.net-mvc-5

我正在创建一个包含$("#emp_code").on("change",function(){ $("#emp_name").val($("#emp_code").val()); }); $("#emp_name").on("change",function(){ $("#emp_code").val($("#emp_name").val()); });的网页。我必须从数据库中检索drop_down_list的数据。有没有办法从数据库中获取数据到html视图我的html代码:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <label>Emp Code:</label> <select id="emp_code"> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select> <br/> <label>Emp Name:</label> <select id="emp_name"> <option value="1">ABC</option> <option value="2">XYZ</option> <option value="3">PQR</option> <option value="4">JKL</option> </select>

我得到了列表变量的数据库值,但我不知道如何将数据传递给html视图。请帮我解决这个问题。谢谢

2 个答案:

答案 0 :(得分:1)

您需要创建选择项目列表:

您对View Bag中的项目列表的操作:

public ActionResult ActionName()
{
 List<SelectListItem> Items = new List<SelectListItem>();
        CustReportName.Add(new SelectListItem() { Text = "List1", Value = "1", Selected = false });
        CustReportName.Add(new SelectListItem() { Text = "List2", Value = "2", Selected = true });
        ViewBag.ListItems = Items;
return View("ViewName");
}

对于数据库表中的多个值:

public ActionResult ActionName()
{
IEnumerable<SelectListItem> ItemsList = from item in YourTableObject
select new SelectListItem
{
Value = Convert.ToString(item.Id),
Text = item.ItemName
};
ViewBag.ListItems = new SelectList(ItemsList, "Value", "Text");
return View("ViewName");
}

您的DropdownList在视图中:

@Html.DropDownListFor(model => model.ItemId, new SelectList(ViewBag.ItemList, "Value", "Text", 0), "-Select Item-", new { @class = "form-control", @id = "ItemId" })

干杯!!

答案 1 :(得分:0)

这只是一个简单的两步过程:

Step1:动作方法代码

public ActionResult Index()  
{
  ViewBag.users = db.users.ToList();
}

Step2:cshtml代码

@Html.DropDownListFor(model => model.someId, new SelectList(ViewBag.users, "userId", "userName"), "Select users")

注意:使用此功能,您可以将数据库中的n个数据绑定到下拉列表

希望它有用

由于

KARTHIK