JavaScript判斷表單元素value值是否被修改過
本章節分享一段程式碼例項,它實現了判斷表單元素的value值是否被修改的功能。
具有一定實用性,比如當表單的內容被修改的時候,這時不小心關閉了頁面,給出一個提示,詢問使用者是否儲存表單的修改,程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <script> function formIsDirty(form) { for (var index = 0; index < form.elements.length; index++) { var element = form.elements[index]; 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.onload=function(){ var obt=document.getElementById("bt"); var odiv=document.getElementById("show"); obt.onclick=function(){ odiv.innerHTML=formIsDirty(document.myform) } } </script> </head> <body> <div id="show"></div> <form name="myform"> <input type="text" name="username" value="softwhy.com"><br> <input type="text" name="address" value="青島市南區"><br> <select name="kecheng"> <option value="css教程" selected="">css教程</option> <option value="div教程">div教程</option> </select> </form> <input type="button" id="bt" value="檢視效果"/> </body> </html>
上面的程式碼實現了判斷功能,下面就介紹一下它的實現過程。
程式碼註釋:
(1).function formIsDirty(form) {},引數是一個表單物件,如果改動則返回true,否則返回false。
(2).for (var index = 0; index < form.elements.length; index++) {},遍歷form下每一個表單元素。
(3).var element = form.elements[index],獲取指定索引的表單元素。
(4).var type = element.type,獲取表單元素的型別。
(5).if (type == "checkbox" || type == "radio") {
if (element.checked != element.defaultChecked) {
return true;
}
}如果是核取方塊或者單選按鈕,那就判斷當前的選中情況是否和預設選中是否一致,下面的判斷原理也是如此。
相關文章
- jQuery 判斷元素是否隱藏jQuery
- 判斷元素是否在視口和元素相交
- JavaScript判斷字串是否為空JavaScript字串
- JavaScript 判斷是否是陣列JavaScript陣列
- JavaScript 判斷函式是否存在JavaScript函式
- MySQL判斷表名是否存在MySql
- postgresql如何判斷表是否存在SQL
- 如何判斷 JavaScript 物件是否為空?JavaScript物件
- javascript 判斷括號是否配對。JavaScript
- Array · 判斷某元素是否在陣列中陣列
- 如何判斷一個元素文字是否換行?
- 判斷一個物件是否為空物件,判斷一個物件中是否有空值物件
- 怎麼判斷mysql表是否存在MySql
- golang中判斷兩個slice是否相等與判斷值下的 陣列是否相等Golang陣列
- JavaScript判斷數字是否是質數JavaScript
- JavaScript判斷兩個變數是否相等JavaScript變數
- JavaScript判斷iframe是否載入完畢JavaScript
- JavaScript 判斷變數是否是函式JavaScript變數函式
- jquery裡判斷陣列內是否包含了指定的值或元素的方法jQuery陣列
- Java stream判斷列表是否包含某幾個元素/重複元素Java
- 如何判斷伺服器是否被攻擊伺服器
- JavaScript 判斷物件中是否有某屬性JavaScript物件
- JavaScript 中,如何判斷兩個物件是否相等?JavaScript物件
- vue透過自定義指令判斷當前元素是否在可視區域Vue
- 如何判斷一個元素是否在可視區域中?
- 如何判斷元素是否進入可視區域viewport?View
- linux 中如何判斷變數是否為數值Linux變數
- sqlserver判斷欄位值是否存在某個字元SQLServer字元
- 如何判斷一個 interface{} 的值是否為 nil ?
- Laravel-admin form 表單判斷是否是增、改(基礎使用)LaravelORM
- JavaScript 判斷checkbox核取方塊是否選中JavaScript
- 如何判斷JavaScript中的兩變數是否相等?JavaScript變數
- 判斷是否為陣列的 JavaScript 方法總結陣列JavaScript
- 動態生成表-判斷表是否存在效能對比
- PbootCMS整理判斷是否連結賦值各種條件判斷和標籤boot賦值
- 如何判斷一個元素在億級資料中是否存在?
- 如何在億級資料中判斷一個元素是否存在?
- 寫一個方法判斷陣列內元素是否全部相同陣列
- 網路遊戲公司如何判斷是否被攻擊?遊戲