最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript判斷用戶是否對表單進行了修改的方法

 更新時間:2015年03月18日 12:16:51   作者:上大王  
這篇文章主要介紹了JavaScript判斷用戶是否對表單進行了修改的方法,實例分析了javascript對表單操作與判定的技巧,需要的朋友可以參考下

本文實例講述了JavaScript判斷用戶是否對表單進行了修改的方法。分享給大家供大家參考。具體分析如下:

這段JS代碼可以判斷出用戶是否對表單內(nèi)容進行了修改,如果修改了表單,并退出瀏覽器,則會提醒用戶是否要保存表單的內(nèi)容,是非常有用的代碼。

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;
}

使用示例:當(dāng)退出瀏覽器是,如果用戶修改了表單,則提醒用戶是否要保存

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.";
 }
};

下面是一個完整的范例代碼

復(fù)制代碼 代碼如下:
Click on below button. Now change some values in form and click the button again.
<form name="fooForm">
    <input type="text" name="t"><br>
    <input type="text" name="2" value="default"><br>
    <select name="some">
        <option value="fooo" selected="">foo</option>
        <option value="bar">bar</option>
    </select><br>
</form>
    <button onclick="alert(formIsDirty(document.fooForm))">Click to check if Form is Dirty</button>
<br>
<script>
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;
}
</script>

希望本文所述對大家的javascript程序設(shè)計有所幫助。

相關(guān)文章

  • 前端防止用戶重復(fù)提交js實現(xiàn)代碼示例

    前端防止用戶重復(fù)提交js實現(xiàn)代碼示例

    這篇文章主要給大家介紹了關(guān)于前端防止用戶重復(fù)提交js實現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起看看吧
    2018-09-09
  • js中的cookie的讀寫操作示例詳解

    js中的cookie的讀寫操作示例詳解

    cookie是有有效期的,cookie的默認(rèn)有效期是從cookie生成至瀏覽器關(guān)閉,也可以通過設(shè)置cookie的有效期來指定其失效日期;用戶也可以禁止cookie也可以手動刪除cookie
    2014-04-04
  • 前端面向?qū)ο缶幊讨瓻S5語法ES6語法詳解

    前端面向?qū)ο缶幊讨瓻S5語法ES6語法詳解

    這篇文章主要為大家介紹了前端面向?qū)ο缶幊讨瓻S5語法ES6語法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11
  • JavaScript 放大鏡 放大倍率和視窗尺寸

    JavaScript 放大鏡 放大倍率和視窗尺寸

    對JavaScript 放大鏡來說, 計算倍率必不可少.一個完整的放大鏡結(jié)構(gòu)里, 與倍率扯上關(guān)系的一共有 4 個對象, 原圖, 縮略圖, 鏡片和視窗.
    2011-05-05
  • BootstrapVue選項卡標(biāo)題增加關(guān)閉按鈕的方法

    BootstrapVue選項卡標(biāo)題增加關(guān)閉按鈕的方法

    這篇文章主要為大家詳細(xì)介紹了BootstrapVue選項卡標(biāo)題增加關(guān)閉按鈕的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • js 3種歸并操作的實例代碼

    js 3種歸并操作的實例代碼

    這篇文章介紹了js 3種歸并操作的實例代碼,有需要的朋友可以參考一下
    2013-10-10
  • 使用時間戳解決ie緩存的問題

    使用時間戳解決ie緩存的問題

    當(dāng)編輯某條數(shù)據(jù)時,再回過頭來進行編輯,會發(fā)現(xiàn),里面的數(shù)據(jù)和沒有編輯以前是一樣的,這就是ie緩存的問題,下面是一個不錯的解決方法
    2014-08-08
  • JS獲取年月日時分秒的方法分析

    JS獲取年月日時分秒的方法分析

    這篇文章主要介紹了JS獲取年月日時分秒的方法,結(jié)合實例形式分析了JS獲取具體時間的常犯錯誤與相應(yīng)解決方法,需要的朋友可以參考下
    2016-11-11
  • JS實現(xiàn)關(guān)閉當(dāng)前頁而不彈出提示框的方法

    JS實現(xiàn)關(guān)閉當(dāng)前頁而不彈出提示框的方法

    這篇文章主要介紹了JS實現(xiàn)關(guān)閉當(dāng)前頁而不彈出提示框的方法,結(jié)合實例形式分析了JS操作頁面的打開、關(guān)閉及父頁面的關(guān)閉技巧,需要的朋友可以參考下
    2016-06-06
  • 兩種簡單實現(xiàn)菜單高亮顯示的JS類代碼

    兩種簡單實現(xiàn)菜單高亮顯示的JS類代碼

    近期在寫一個博客管理后臺的前端,涉及在同一頁面兩種高亮顯示當(dāng)前菜單的需求.
    2010-06-06

最新評論

中牟县| 盐山县| 慈利县| 嘉义市| 长泰县| 松滋市| 赣榆县| 文安县| 上饶市| 温宿县| 榆中县| 井冈山市| 汾西县| 榆中县| 桂平市| 铜陵市| 西林县| 台东县| 抚松县| 阳城县| 枞阳县| 唐山市| 井陉县| 朔州市| 姚安县| 富民县| 永仁县| 和平区| 孝昌县| 钟山县| 黑山县| 方正县| 龙海市| 安福县| 昭苏县| 仪征市| 青州市| 芜湖市| 谷城县| 南平市| 乐安县|