将复选框值绑定到对象

时间:2011-04-14 11:34:11

标签: asp.net-mvc-2 binding checkbox

这是我视图中的代码 <% using (Html.BeginForm("Add", "Objectives", FormMethod.Post, new { id = "formElem", name = "formElem" })) { %>

    <table>
<tr>
<th>Investment Objective</th>
<th>Rank1</th>
<th>Rank2</th>
<th>Rank3</th>
<th>Rank4</th>
<th>Rank5</th>
<th>Rank6</th>
</tr>
<tr>
    <td>Conservation of Capital</td>
    <td><%=Html.CheckBox("ConservationofCapitalRank", false, new {value=1} )%></td>
    <td><%=Html.CheckBox("ConservationofCapitalRank", false, new {value=2} )%></td>
    <td><%=Html.CheckBox("ConservationofCapitalRank", false, new {value=3} )%></td>
    <td><%=Html.CheckBox("ConservationofCapitalRank", false, new {value=4} )%></td>
    <td><%=Html.CheckBox("ConservationofCapitalRank", false, new {value=5} )%></td>
    <td><%=Html.CheckBox("ConservationofCapitalRank", false, new {value=6} )%></td>
</tr>
<tr>
    <td>Income</td>
    <td><%=Html.CheckBox("IncomeRank", false, new {value=1} )%></td>
    <td><%=Html.CheckBox("IncomeRank", false, new {value=2} )%></td>
    <td><%=Html.CheckBox("IncomeRank", false, new {value=3} )%></td>
    <td><%=Html.CheckBox("IncomeRank", false, new {value=4} )%></td>
    <td><%=Html.CheckBox("IncomeRank", false, new {value=5} )%></td>
    <td><%=Html.CheckBox("IncomeRank", false, new {value=6} )%></td>
</tr>

   

         

 <% } %>

我正在尝试在控制器操作中获取对象中的值。

[HttpPost]
    public ActionResult Add(Objectives pObjectives)
    {
        return RedirectToAction("Index");
    }

这就是我的目标类的外观。

public class Objectives
    {
        public long ConservationofCapitalRank { get; set; }
        public long IncomeRank { get; set; }

    }

我允许用户在任何给定时间只选择一个等级。 现在我的问题是,如果我选择值为1的复选框,则值似乎与我的对象绑定。但是,如果我选中值为2的复选框,则它不会绑定。

有关此行为原因的任何建议吗?

0 个答案:

没有答案