在提交给服务器之前如何识别模型?

时间:2015-09-14 21:58:59

标签: jquery asp.net-mvc

我们有MVC应用程序。我们要求用户更改页面上的任何数据并尝试离开页面而不保存,然后我们需要显示一些“你确定吗?”有点消息。

这里的挑战是如何识别数据的变化?我们的典型设计模式如下

public class MyController:Controller
{
   public ActionResult Index()
   {
      var model = LoadModelFromDB();
      return View(model);
   }
}

然后我们使用Html帮助扩展方法将模型绑定到视图 在客户端,如何在将数据提交到服务器之前识别模型是否脏?

1 个答案:

答案 0 :(得分:0)

这是一个完全在客户端上发生的操作 - 它与MVC中的Model无关。

您可以通过使用JavaScript将事件处理程序附加到onbeforeunload event,并提供一些额外的逻辑来测试表单元素以进行更改来实现此目的。

我为一个开源项目做出了贡献,它有助于修复浏览器之间的差异,以及监视更改的表单元素,允许插入不同的对话框架,并将其包装成一个名为jQuery的好插件Dirty Forms