当前位置: 首页 > 面试题库 >

检测未保存的更改

华宏逸
2023-03-14
问题内容

我需要在ASP
.Net应用程序中实现“未保存的更改”提示。如果用户修改了Web表单上的控件,并试图在保存之前导航离开,则将出现提示,警告他们尚未保存更改,并为他们提供取消并保留在当前页面上的选项。如果用户未触摸任何控件,则不应显示该提示。

理想情况下,我想用JavaScript实现此功能,但是在我开始滚动自己的代码之前,是否有任何现有的框架或推荐的设计模式来实现这一目标?理想情况下,我希望可以以最小的更改轻松地在多个页面上重复使用的东西。


问题答案:

使用jQuery:

var _isDirty = false;
$("input[type='text']").change(function(){
  _isDirty = true;
});
// replicate for other input types and selects

根据需要与onunload/ onbeforeunload方法结合。

从注释中,以下内容引用了所有输入字段,而没有重复的代码:

$(':input').change(function () {

使用$(":input")是指所有输入,文本区域,选择和按钮元素。



 类似资料:
  • 问题内容: 下面是到目前为止的代码 如何发出警报或是否有一些未保存的数据,以便用户决定是否继续? 问题答案: 这样的事情应该做到: 请注意,在此示例中未触发$ locationChangeStart的侦听器,因为在这样一个简单的示例中AngularJS不处理任何路由,但它应在实际的Angular应用程序中运行。

  • 问题内容: 我是AngularJs的新手,所以这可能微不足道。是否有内置的AngularJ 来检测表单中未保存的数据。如果没有,那么如何去写一个。任何指针将不胜感激。 html代码是 我的角度js控制器代码是 我正在尝试编写指令以检测未保存的数据,并且我猜想它会写在上述控制器中。 问题答案: AngularJS设置CSS类和任何输入栏你已经使用在NG- 模型,您的FormController拥有的

  • 问题内容: 我试图使用makemigrations命令在现有应用程序中创建迁移,但输出“未检测到更改”。 通常,我使用命令创建新应用,但在创建该应用时并未将其用于该应用。 调试后,我发现它没有创建迁移,因为应用程序中缺少软件包/文件夹。 如果不存在该文件夹,还是创建丢失的文件夹,会更好吗? 问题答案: 要为应用创建初始迁移,请运行并指定应用名称。将创建迁移文件夹。 你的应用必须首先包含(在sett

  • 我正在尝试撤消自上次提交以来的所有更改。看过这篇文章后,我尝试了<code>git reset--hard。我回答说,头现在在18c3773…但当我查看我的本地源时,所有文件仍然在那里。我错过了什么?

  • 我是docker世界的新手:我正处于一个可以部署docker容器并做一些工作的阶段。 试图进入下一个级别保存我的更改并将我的容器/映像移动到另一台PC/服务器。 目前,我在Windows10上使用docker,但我确实可以访问Ubuntu16.04服务器来测试我的工作。 这就是我被困住的地方:我在Docker上部署了Wordpress和MariaDB图像。 我的WP运行得很好,我安装了几个主题,创

  • git add / git commit / git diff / git stash / .gitignore “保存”这个概念在 Git 等版本控制系统和 Word 等文本编辑应用中不太一样。传统软件里的“保存”在 Git 里被叫做“提交”(commit)。 我们常说的的保存可以理解成在文件系统中覆盖一个已有的文件或者创建一个新的文件。而在 Git 中,提交这个操作作用于若干个文件和目录。 在