Asp.net mvc 3 如何在asp.net MVC中生成dropdownlist
在我的剃须刀中,我生成了这样的下拉列表Asp.net mvc 3 如何在asp.net MVC中生成dropdownlist,asp.net-mvc-3,razor,asp.net-mvc-4,Asp.net Mvc 3,Razor,Asp.net Mvc 4,在我的剃须刀中,我生成了这样的下拉列表 @{ var listItems = new List<ListItem> { new ListItem { Text = "Home To School", Value = "0" }, new ListItem { Text = "School To Home", Value = "1" } }; } @Html
@{
var listItems = new List<ListItem>
{
new ListItem { Text = "Home To School", Value = "0" },
new ListItem { Text = "School To Home", Value = "1" }
};
}
@Html.DropDownList("Direction", new SelectList(listItems),new {onchange = "getAlldata()"})
@{
var listItems=新列表
{
新列表项{Text=“从家到学校”,Value=“0”},
新列表项{Text=“从学校到家庭”,Value=“1”}
};
}
@DropDownList(“方向”,新选择列表(listItems),新{onchange=“getAlldata()”})
由此生成的HTML如下所示
<select id="Direction" name="Direction" onchange="getAlldata()">
<option>Home To School</option>
<option>School To Home</option>
</select>
<select id="Direction" name="Direction" onchange="getAlldata()">
<option value="0">Home To School</option>
<option value="1">School To Home</option>
</select>
@Html.DropDownList("Direction", new SelectList(listItems , "Value" , "Text"),new {onchange = "getAlldata()"})
学校之家
从学校到家
但是我想生成类似这样的HTML
<select id="Direction" name="Direction" onchange="getAlldata()">
<option>Home To School</option>
<option>School To Home</option>
</select>
<select id="Direction" name="Direction" onchange="getAlldata()">
<option value="0">Home To School</option>
<option value="1">School To Home</option>
</select>
@Html.DropDownList("Direction", new SelectList(listItems , "Value" , "Text"),new {onchange = "getAlldata()"})
学校之家
从学校到家
如何做到这一点。是一些如何使用Razor构建DropDownList
的示例,例如使用SelectListItem
:
public ActionResult Index()
{
var db = new NorthwindEntities();
IEnumerable<SelectListItem> items = db.Categories
.Select(c => new SelectListItem
{
Value = c.CategoryID.ToString(),
Text = c.CategoryName
});
ViewBag.CategoryID = items;
return View();
}
public ActionResult Index()
{
var db=新的NorthwindEntities();
IEnumerable items=db.Categories
.选择(c=>new SelectListItem
{
Value=c.CategoryID.ToString(),
Text=c.CategoryName
});
ViewBag.CategoryID=项目;
返回视图();
}
编辑:
选中此项:
@Html.DropDownList("Direction", new List<SelectListItem>
{
new SelectListItem{ Text = "Home To School", Value = "0" },
new SelectListItem{ Text = "School To Home", Value = "1" }
},new {onchange = "getAlldata()"})
@Html.DropDownList(“方向”,新列表
{
新建SelectListItem{Text=“从家到学校”,Value=“0”},
新建SelectListItem{Text=“从学校到家庭”,Value=“1”}
},新的{onchange=“getAlldata()”})
像这样使用它
<select id="Direction" name="Direction" onchange="getAlldata()">
<option>Home To School</option>
<option>School To Home</option>
</select>
<select id="Direction" name="Direction" onchange="getAlldata()">
<option value="0">Home To School</option>
<option value="1">School To Home</option>
</select>
@Html.DropDownList("Direction", new SelectList(listItems , "Value" , "Text"),new {onchange = "getAlldata()"})
我只能在视图中生成下拉列表。它也是静态的,如我的问题所示。@vaibhavshah它只是一个使用文章中的
SelectListItem
q的集合来展示一种方法的例子,我不理解-1。我现在添加了另一种适合您的数据的方式。@vaibhavshah您能解释一下-1吗?我给了你们一篇关于这个问题的不同答案的文章,并引用了其中的一个。我看不出有什么理由投反对票。getAlldata()的定义去哪里了?你把函数“getAlldata()”的定义放在哪里了?或者干脆@Html.DropDownList(“Direction”,llistItems,new{onchange=“getAlldata()”})
-这是一个毫无意义的额外任务,需要从现有的选择列表中创建第二个选择列表