我有一个可编辑的表,其中每行都有下拉列表来更新行值。如何在页面加载时为编辑页面上的行设置下拉列表选定值。
我的HTML代码:
foreach (var item in Model)
{
<tr>
<td>
@Html.DropDownList("TeamA", null, "--Select--", htmlAttributes: new { @id = "teamA_" + item.ScheduleID, @class="form-control" })
</td>
<td>
@Html.DropDownList("TeamB", null, "--Select--", htmlAttributes: new { @id = "teamB_" + item.ScheduleID, @class = "form-control"})
</td>
</tr>
}
分别通过ViewBag.TeamA和ViewBag.TeamB填写表格选项,如下所示
ViewBag.TeamA = new SelectList(db.Teams.Where(s => s.RoleID == Id).ToList(), "TeamID", "Name");
ViewBag.TeamB = new SelectList(db.Teams.Where(s => s.RoleID == Id).ToList(), "TeamID", "Name");
答案 0 :(得分:1)
在你不确定如何使用剃须刀的情况下使用Html,比如在这种情况下使用带循环的Html下拉列表。 e.g。
<select>
@foreach (var v in ViewBag.DropdownData)
{
<option value="@v.ID" @(v.ID == item.DDLID ? "selected" : "")>@v.Name</option>
}
</select>
答案 1 :(得分:0)
您必须定义import maya.cmds as cmds
window = cmds.window( title="Render",widthHeight=(300,200),minimizeButton=True,maximizeButton=True )
inner_child_5 = cmds.rowColumnLayout(numberOfColumns=2)
for val in range(0,2):
cmds.checkBox(label="layer")
cmds.text("Done",width=150, height=10,align='left')
cmds.showWindow( window )
的列表,并且您需要定义所选项目,如下所示。
DorpDownList
请注意,我已经生成了列表(新列表),例如。
答案 2 :(得分:0)
将string.optionLabel
中的@Html.DropDownList
设置为item.Name
可能会有效,假设您在视图中使用您的团队作为模型。
@Html.DropDownList("TeamA", null, item.Name, new {@id = "teamA_" + item.ScheduleID, @class="form-control"})
如果它们有任何值,则应显示正确的值,否则它将为空。
答案 3 :(得分:0)
谢谢大家的宝贵时间,我按照以下方式解决了这个问题。
<td>
<select name="TeamA" >
<option value="0">--select--</option>
@foreach (Team t in ViewBag.TeamA)
{
<option value="@t.TeamID" @(t.TeamID == item.Team1 ? "selected" : "")>@t.Name</option>
}
</select>
</td>
并在服务器端
ViewBag.TeamA = db.Teams.Where(s => s.SeriesID == Id).ToList();