亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

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

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

復制代碼 代碼如下:
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程序設計有所幫助。

相關文章

  • 初學js插入節(jié)點appendChild insertBefore使用方法

    初學js插入節(jié)點appendChild insertBefore使用方法

    由于可見insertBefore()方法的特性是在已有的子節(jié)點前面插入新的節(jié)點但是兩種情況結合起來發(fā)現(xiàn)insertBefore()方法插入節(jié)點,是可以在子節(jié)點列表的任意位置。
    2011-07-07
  • js實現(xiàn)網(wǎng)頁抽獎實例

    js實現(xiàn)網(wǎng)頁抽獎實例

    這篇文章主要介紹了js實現(xiàn)網(wǎng)頁抽獎的方法,實例分析了javascript隨機數(shù)及時間函數(shù)的相關使用技巧,非常簡單實用,需要的朋友可以參考下
    2015-08-08
  • JS讀寫CSS樣式的方法匯總

    JS讀寫CSS樣式的方法匯總

    這篇文章主要為大家詳細匯總了JS讀寫CSS樣式的方法,內(nèi)容詳盡,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 跟我學習javascript的浮點數(shù)精度

    跟我學習javascript的浮點數(shù)精度

    跟我學習javascript的浮點數(shù)精度,帶大家真正的理解JavaScript的浮點數(shù),提醒大家當心浮點運算中的精度陷阱,需要的朋友可以參考下
    2015-11-11
  • JS+CSS實現(xiàn)大氣清新的滑動菜單效果代碼

    JS+CSS實現(xiàn)大氣清新的滑動菜單效果代碼

    這篇文章主要介紹了JS+CSS實現(xiàn)大氣清新的滑動菜單效果代碼,通過鼠標事件結合定時函數(shù)實現(xiàn)頁面元素動態(tài)變換的效果,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-10-10
  • Jquery對數(shù)組的操作技巧整理

    Jquery對數(shù)組的操作技巧整理

    這篇文章主要介紹了Jquery對數(shù)組的操作技巧,需要的朋友可以參考下
    2014-03-03
  • 關于JS判斷圖片是否加載完成且獲取圖片寬度的方法

    關于JS判斷圖片是否加載完成且獲取圖片寬度的方法

    本篇文章小編為大家介紹,關于JS判斷圖片是否加載完成且獲取圖片寬度的方法,有需要的朋友可以參考一下
    2013-04-04
  • 基于javascript原生判斷DOM是否加載完畢

    基于javascript原生判斷DOM是否加載完畢

    這篇文章主要介紹了基于javascript原生判斷DOM是否加載完畢,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • javascript操作表格排序實例分析

    javascript操作表格排序實例分析

    這篇文章主要介紹了javascript操作表格排序,涉及javascript數(shù)組排序與表格操作的相關技巧,需要的朋友可以參考下
    2015-05-05
  • javascript中的event loop事件循環(huán)詳解

    javascript中的event loop事件循環(huán)詳解

    這篇文章主要給大家介紹了關于javascript中event loop事件循環(huán)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-12-12

最新評論