IEnumerable的mvc3表单

我有一个模型,我希望有一个大规模更新页面,但有麻烦。

我的ViewModel:

public class ApproveView
{

    public IEnumerable<MyObject> ObjectList { get; set; }

}

在我看来,我有:

foreach (var item in Model.ObjectList)
{
    <div>


    <table class="form" width="100%">
        <tr>

            <td>@Html.LabelFor(model => item.Accurate)<br />
            @Html.RadioButtonFor(model => item.Accurate, true) Yes
            @Html.RadioButtonFor(model => item.Accurate, false) No
            @Html.ValidationMessageFor(model => item.Accurate)
            </td>
            <td>
            @Html.LabelFor(model => item.Comments)<br />
            @Html.TextAreaFor(model => item.Comments)<br />
            @Html.ValidationMessageFor(model => item.Comments)
            </td>
        </tr>

    </table>

    @Html.HiddenFor(model => item.ID)
    @Html.HiddenFor(model => item.CreatedOn)
    @Html.HiddenFor(model => item.CreatedBy)
    @Html.HiddenFor(model => item.ModifiedOn)
    @Html.HiddenFor(model => item.ModifiedBy)
   <hr />
}

这遍历我的对象并打印表单。 麻烦的是所有相同类型的字段都有相同的名称。 所以,例如,我所有的单选按钮都已连接,我只能选择一个。

我如何为每个字段设置唯一名称并与该对象关联? 我是否在正确的轨道上,或者有更好的方法来做到这一点?


检查这篇文章:http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

您需要为您的实体创建编辑器。

希望能帮助到你。


你也可以手动做一些:

    @{var count = 0;}
    @foreach (var item in Model.ObjectList){
            <div>
                <table class="form">
                    <tr>
                        <td>@Html.Label("Accurate" + count, item.Accurate)<br />
                            @Html.RadioButton("AccurateTrue" + count, true) Yes
                            @Html.RadioButton("AccurateFalse" + count, false) No
                            @Html.ValidationMessage("ValidationAccurate" + count, item.Accurate)
                        </td>
                        <td>
                            @Html.Label("CommentsLabel" + count, item.Comments)<br />
                            @Html.TextArea("Comments" + count, item.Comments)<br />
                            @Html.ValidationMessage("ValidationComment" + count, item.Comments)
                        </td>
                    </tr>
                </table>
                @Html.Hidden("ID" + count, item.ID)
                @Html.Hidden("CreatedOn" + count, item.CreatedOn)
                @Html.Hidden("CreatedBy" + count, item.CreatedBy)
                @Html.Hidden("ModifiedOn" + count, item.ModifiedOn)
                @Html.Hidden("ModifiedBy" + count, item.ModifiedBy)
                <hr />
                @count++; 
@}
链接地址: http://www.djcxy.com/p/54839.html

上一篇: mvc3 form for a IEnumerable

下一篇: Python Unittest Import Failure