js檢測(cè)離開(kāi)或刷新頁(yè)面時(shí)表單數(shù)據(jù)是否更改的方法
本文實(shí)例講述了js檢測(cè)離開(kāi)或刷新頁(yè)面時(shí)表單數(shù)據(jù)是否更改的方法。分享給大家供大家參考,具體如下:
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"])) {
// IE 和 Firefox
if (e) {
e.returnValue = "對(duì)不起,頁(yè)面數(shù)據(jù)已做修改,尚未保存,確定要刷新或離開(kāi)本頁(yè)面?";
}
// Safari瀏覽器
return "對(duì)不起,頁(yè)面數(shù)據(jù)已做修改,尚未保存,確定要刷新或離開(kāi)本頁(yè)面?";
}
};
更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《JavaScript中json操作技巧總結(jié)》、《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫(huà)特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》
希望本文所述對(duì)大家JavaScript程序設(shè)計(jì)有所幫助。
相關(guān)文章
JavaScript實(shí)現(xiàn)對(duì)JSON對(duì)象數(shù)組數(shù)據(jù)進(jìn)行分頁(yè)處理
這篇文章主要介紹了使用JavaScript實(shí)現(xiàn)對(duì)JSON對(duì)象數(shù)組數(shù)據(jù)進(jìn)行分頁(yè)處理,文中有詳細(xì)的代碼示例供大家參考,對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2024-10-10
設(shè)為首頁(yè)與加入收藏的JS代碼(多瀏覽器支持)
由于現(xiàn)在很多瀏覽器版本,那么多瀏覽器兼容的設(shè)為首頁(yè)與加入收藏功能代碼,就比較好用,這里簡(jiǎn)單的整理下,方便需要的朋友2012-12-12
微信小程序第三方框架對(duì)比 之 wepy / mpvue / taro
這篇文章主要介紹了小程序第三方框架對(duì)比 ( wepy / mpvue / taro ) 分析,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-04-04
談?wù)勎覍?duì)JavaScript原型和閉包系列理解(隨手筆記6)
這篇文章主要介紹我對(duì)JavaScript原型和閉包系列理解(隨手筆記6)的相關(guān)資料,需要的朋友可以參考下2015-12-12
js實(shí)現(xiàn)簡(jiǎn)單的選項(xiàng)卡效果
本文主要介紹了js實(shí)現(xiàn)簡(jiǎn)單的選項(xiàng)卡效果的示例代碼,具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02
JavaScript中的break語(yǔ)句和continue語(yǔ)句案例詳解
本文詳細(xì)介紹了JavaScript中的break和continue語(yǔ)句的用法及其應(yīng)用場(chǎng)景,break用于提前退出循環(huán),而continue用于跳過(guò)當(dāng)前迭代,還介紹了標(biāo)簽化的break和continue,以及如何在實(shí)際編程中合理使用這些語(yǔ)句以提高代碼的效率和可讀性,感興趣的朋友一起看看吧2025-03-03
LayUI動(dòng)態(tài)設(shè)置checkbox不顯示的解決方法
今天小編就為大家分享一篇LayUI動(dòng)態(tài)設(shè)置checkbox不顯示的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09

