作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 View 中有一个列表框选择,我需要按住 ctrl 键才能选择多个项目,我正在使用以下代码:
@Html.ListBoxFor(
m => m.SelectedSkills ,
new MultiSelectList( listItems, "Id", "Name", @Model.SelectedSkills ),
new { Multiple = "multiple" }
)
我想在每个列表项前面放一个复选框,用户可以选中/取消选中复选框来选择/取消选择一个项目,当它发布表单时,只有选中的复选框值应该传递到 Controller 操作中,如何才能我实现了这个...
最佳答案
你可以这样做:
第一种方法:创建html标签
<ul>
@foreach (var g in Model.AllSkills)
{
<li>
<input type="checkbox"
name="SelectedSkills"
value="@g.ID" id="@g.ID"
@{if (condition)
{><text> checked='checked' </text> } } />
<label for="@g.ID">@g.Name</label>
</li>
}
</ul>
现在您可以发布表单并看到所选值存储在 model.SelectedSkills 字段中。
第二种方法:使用MvcCheckBoxList
<div class="editor-field">
@Html.CheckBoxListFor(model=>model.SelectedSkills,
model=>model.AllSkills,
x=>x.ID,
x=>x.Names)
</div>
有关详细信息,请参阅 this .
关于c# - 如何在 mvc4 Razor 中为列表框选择复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45798817/
我是一名优秀的程序员,十分优秀!