如何生成复选框列表?

时间:2013-03-18 22:23:30

标签: vb.net razor asp.net-mvc-4

我想在页面上以以下形式显示未知数量的复选框:

<input type="checkbox"... />
<label for...>

我的数据库表包含有关这些复选框的信息

Id
Name

为简单起见,我们假设Id只是一个整数,Name是一种颜色(“红色”,“绿色”)。

如何最好地生成这些框?

我目前的代码是

Model

Public Property Colours As IEnumerable(Of CheckBox)

Public Sub New()
    Colours = ...
End Sub

View

@For Each item In Model.Colours
    @Html.CheckBox(item.Text, item.Checked)
    @Html.Label(item.Text, item.Text)
Next

另外,CheckBoxList和CheckBoxField应该如何使用?

1 个答案:

答案 0 :(得分:2)

我会考虑使用扩展来生成复选框列表,而不是手动滚动它,例如:

有些同事对以前版本的MVC Controls Toolkit存在问题。这只是我的传闻,因为当时我正在研究一些不同的东西,但我想在YMMV的情况下我会提到它。

Re:“如何使用CheckBoxList和CheckBoxField”,我看待它的方式是:

  • CheckBoxList获取一组相关选项,您希望人们选择无,一个或多个
  • CheckBoxField,用于当您有一个选项,其中包含yes / no或true / false(例如“勾选我取消订阅”框)

HTH, 森