首页 > web前端 > js教程 > 正文

JavaScript判断用户是否对表单进行了修改的方法_javascript技巧

php中文网
发布: 2016-05-16 16:08:47
原创
1542人浏览过

本文实例讲述了javascript判断用户是否对表单进行了修改的方法。分享给大家供大家参考。具体分析如下:

这段JS代码可以判断出用户是否对表单内容进行了修改,如果修改了表单,并退出浏览器,则会提醒用户是否要保存表单的内容,是非常有用的代码。

function formIsDirty(form) {
 for (var i = 0; i < form.elements.length; i++) {
  var element = form.elements[i];
  var type = element.type;
  if (type == "checkbox" || type == "radio") {
   if (element.checked != element.defaultChecked) {
    return true;
   }
  }
  else if (type == "hidden" || type == "password" ||
       type == "text" || type == "textarea") {
   if (element.value != element.defaultValue) {
    return true;
   }
  }
  else if (type == "select-one" || type == "select-multiple") {
   for (var j = 0; j < element.options.length; j++) {
    if (element.options[j].selected !=
      element.options[j].defaultSelected) {
     return true;
    }
   }
  }
 }
 return false;
}
登录后复制

使用示例:当退出浏览器是,如果用户修改了表单,则提醒用户是否要保存

window.onbeforeunload = function(e) {
 e = e || window.event; 
 if (formIsDirty(document.forms["someForm"])) {
  // For IE and Firefox
  if (e) {
   e.returnValue = "You have unsaved changes.";
  }
  // For Safari
  return "You have unsaved changes.";
 }
};
登录后复制

下面是一个完整的范例代码

Google Antigravity
Google Antigravity

谷歌推出的AI原生IDE,AI智能体协作开发

Google Antigravity 277
查看详情 Google Antigravity
复制代码 代码如下:
Click on below button. Now change some values in form and click the button again.

   

   

   


   


<script><br /> function formIsDirty(form) {<br /> for (var i = 0; i < form.elements.length; i++) {<br /> var element = form.elements[i];<br /> var type = element.type;<br /> if (type == "checkbox" || type == "radio") {<br /> if (element.checked != element.defaultChecked) {<br /> return true;<br /> }<br /> }<br /> else if (type == "hidden" || type == "password" ||<br /> type == "text" || type == "textarea") {<br /> if (element.value != element.defaultValue) {<br /> return true;<br /> }<br /> }<br /> else if (type == "select-one" || type == "select-multiple") {<br /> for (var j = 0; j < element.options.length; j++) {<br /> if (element.options[j].selected !=<br /> element.options[j].defaultSelected) {<br /> return true;<br /> }<br /> }<br /> }<br /> }<br /> return false;<br /> }<br /> </script>

希望本文所述对大家的javascript程序设计有所帮助。

相关标签:
java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号