过帐列表中缺少号码的列表

时间:2019-05-13 13:30:55

标签: c# asp.net-mvc-4 post

我有一个表格,用来发布信息列表。

所以列表可以像这样。

Person[0].FullName
Person[0].Address

Person[1].FullName
Person[1].Address

Person[2].FullName
Person[2].Address

Person[3].FullName
Person[3].Address

当我发布此信息并运行更新评论时,一切正常。 List <>模型返回4条记录。

但是,当我使用jQuery删除中间记录之一时,它将从HTML删除整行。因此,我最终遇到了以下情况。

Person[0].FullName
Person[0].Address

Person[2].FullName
Person[2].Address

Person[3].FullName
Person[3].Address

但是现在当我发布信息时,List <>的计数现在为1,因为它会忽略删除后的所有内容。我猜是因为列表现在不连续了?

有人曾经遇到过同样的问题,并且知道一种保存所有项目的方法吗?

谢谢

编辑-HTML

for (int i = 0; i < Model.PersonsViewModel.Count(); i++)
{
    <div id="clone_@i" class="form-group clone">
        <div class="col-sm-6 has-feedback">
            <div class="row">
                <div class="col-sm-12">
                    @Html.TextBoxFor(model => model.PersonsViewModel[i].FullName, new { @class = "form-control" })
                    @Html.ValidationMessageFor(m => m.PersonsViewModel[i].FullName)
                </div>
            </div>
        </div>
        <div class="col-sm-6 has-feedback">
            <div class="row">
                <div class="col-sm-12">
                    @Html.TextBoxFor(model => model.PersonsViewModel[i].Address, new { @class = "form-control" })
                    @Html.ValidationMessageFor(m => m.PersonsViewModel[i].Address)
                </div>
            </div>
        </div>  
    </div>
}

1 个答案:

答案 0 :(得分:-1)

因为您正在破坏列表链,并且丢失了列表索引。也许您可以尝试在控制器端进行编辑。我以前遇到此问题,并在控制器中进行了修复。