C# 从EditorFor回发时仅获取更改的值

C# 从EditorFor回发时仅获取更改的值,c#,.net,asp.net-mvc,editorfor,C#,.net,Asp.net Mvc,Editorfor,我有一个使用EditorFor在视图中显示的对象列表。用户可以更改对象的值。在回发时,我只想得到修改的对象列表,而不是整个列表。我该怎么做?谢谢如果您为列表创建了控件,除非禁用,否则它们都将发回。您可以从数据库中获取原始列表并进行比较。是的,这是我目前的解决方案。。与原值相比。。但是我想知道是否有一种更简单的方法可以从mvc以某种方式过滤来自Editor的信息,如果它的值是更改的,而不是mvc,那么您可以在视图模型中添加一个IsDirty属性,并在任何相应的属性控件更改时使用javascipt/

我有一个使用EditorFor在视图中显示的对象列表。用户可以更改对象的值。在回发时,我只想得到修改的对象列表,而不是整个列表。我该怎么做?谢谢

如果您为列表创建了控件,除非禁用,否则它们都将发回。您可以从数据库中获取原始列表并进行比较。是的,这是我目前的解决方案。。与原值相比。。但是我想知道是否有一种更简单的方法可以从mvc以某种方式过滤来自Editor的信息,如果它的值是更改的,而不是mvc,那么您可以在视图模型中添加一个IsDirty属性,并在任何相应的属性控件更改时使用javascipt/jquery来更新该值这在回发之前从UI更改。你能给我举个例子说明如何做到这一点吗?确保每个项目的控件都呈现在一个容器中如果它是一个表,那么元素就是容器。使用事件委派jquery.on处理所有控件的更改或模糊事件。在该函数中,获取与项目关联的所有控件,即关联容器中的控件,并将其值与defaultValue或defaultChecked进行比较。如果它们不同,则将隐藏的输入值设置为true并退出循环。试一试,如果你有问题,发布代码和html。