动态模型绑定客户端

时间:2019-04-12 09:05:11

标签: c# jquery asp.net-mvc dynamic model-binding

我正在创建一个asp.net MVC剃刀页面,其中我必须使用jQuery动态添加/删除模型(全部在客户端)。不仅需要在列表末尾添加/删除模型,还可以在列表中的任何位置删除/添加。在这种情况下,我该如何处理模型(模型的索引),以便将模型绑定的数据发布到控制器上

当前,我正在克隆这样的数据,

var $newPanel = $currentPanel.clone().removeAttr('id');

并分配这样的对象

$('#id1', $newPanel).attr('name', 'CurrentDateTrips[' + index + '].Vehicle');

1 个答案:

答案 0 :(得分:0)

要使用默认的MVC列表绑定,索引必须是顺序的(即1,2,3,而不是1,3,4)。

但是,在html中,索引不必按此顺序排列,只要它们在帖子中是连续的即可。

对于删除,不要.remove()行,而要进行逻辑删除(例如,隐藏的输入,其名称= rowdeleted左右)。这样,删除行时序列保持顺序。

在中间添加新行与在末尾添加新行相同,索引是现有行/最高索引+1。但是可以在实际行中的任何位置,无需重新索引。