我正在创建一个asp.net MVC剃刀页面,其中我必须使用jQuery动态添加/删除模型(全部在客户端)。不仅需要在列表末尾添加/删除模型,还可以在列表中的任何位置删除/添加。在这种情况下,我该如何处理模型(模型的索引),以便将模型绑定的数据发布到控制器上
当前,我正在克隆这样的数据,
var $newPanel = $currentPanel.clone().removeAttr('id');
并分配这样的对象
$('#id1', $newPanel).attr('name', 'CurrentDateTrips[' + index + '].Vehicle');
答案 0 :(得分:0)
要使用默认的MVC列表绑定,索引必须是顺序的(即1,2,3,而不是1,3,4)。
但是,在html中,索引不必按此顺序排列,只要它们在帖子中是连续的即可。
对于删除,不要.remove()
行,而要进行逻辑删除(例如,隐藏的输入,其名称= rowdeleted左右)。这样,删除行时序列保持顺序。
在中间添加新行与在末尾添加新行相同,索引是现有行/最高索引+1。但是可以在实际行中的任何位置,无需重新索引。