19

CheckBoxListが ASP.NET MVC プレビュー リリース 5 から削除されたのはなぜですか?

現在、チェックボックスのリスト (名前は似ているが ID が異なる) を作成する方法が見当たらないので、人々はリストから 0 ~ 1 個以上のオプションを選択できます。

CheckBoxListMVContrib ライブラリにリストがありますが、非推奨です。CheckBoxList他の HtmlHelpers については理解できますが、プレビュー 5 に代わるものはないようです。

以下に示すような非常に単純なリストを作成したいのですが、ASP.NET MVC プレビュー リリース 5 を使用してこれを行う最善の方法は何ですか?

<INPUT TYPE="checkbox" NAME="Inhoud" VALUE="goed"> goed
<INPUT TYPE="checkbox" NAME="Inhoud" VALUE="redelijk"> redelijk
<INPUT TYPE="checkbox" NAME="Inhoud" VALUE="matig"> matig
<INPUT TYPE="checkbox" NAME="Inhoud" VALUE="slecht"> slecht
4

4 に答える 4

19

チェックボックスを生成するビューの for ループ

<% foreach(Inhoud i in ViewData["InhoudList"] as List<Inhoud>) { %>
  <input type="checkbox" name="Inhoud" value="<%= i.name %>" checked="checked" /> <%= i.name %>
<% } %>   

を使用しないでくださいHtml.Checkbox。リスト内の各項目に対して 2 つの値が生成されるためです (偽の値に対して非表示の入力を使用するため)。

于 2008-10-14T14:35:37.763 に答える
7

私は最近、MVC ベータ版での CheckBoxList ヘルパーの実装についてブログを書きました。ここにリンクがあります。

于 2008-11-11T02:37:59.217 に答える
1

ModelState をサポートする CheckListBox の独自の実装があります。興味がある場合は、Un CheckBoxList que funciona en ASP.NET MVCにあります。投稿はスペイン語ですが、コードを読むのに問題はないはずです.

Jeremiah ソリューションで興味深いのは、チェックボックスの初期状態を設定できることです。これは、私の CheckListBox ではできないことです。

于 2009-07-05T04:27:18.200 に答える
0

上記のJeremiahClark拡張機能を使用することをお勧めします。(チェックボックスリスト)

私のコントローラーは非常に簡単な指示になりました。明確にするために、サンプルには含まれていないコードの断片を追加します。

        var rolesList = new List<CheckBoxListInfo>();
        foreach (var role in Roles.GetAllRoles())
        {
            rolesList.Add(new CheckBoxListInfo(role, role, Roles.IsUserInRole(user.UserName, role)));
        }
        ViewData["roles"] = listaRoles;

そしてビューで:

<div><%= Html.CheckBoxList("roles", ViewData["roles"]) %></div>

それで全部です。

于 2009-04-01T15:58:27.470 に答える