编辑表单后离开本页面时做提示(jQuery版)

//编辑表单后离开本页面时做提示(jQuery版)

$.fn.enable_changed_form_confirm = function ( prompt ) {       
    var _f = this;     
 $(':text, :password, textarea', this).each(function() {       
        $(this).attr('_value', $(this).val());       
    });     
     
    $(':checkbox, :radio', this).each(function() {       
        var _v = this.checked ? 'on' : 'off';       
        $(this).attr('_value', _v);       
    });     
     
    $('select', this).each(function() {       
        $(this).attr('_value', this.options[this.selectedIndex].value);       
    });       
           
    $(this).submit(function() {       
        window.onbeforeunload = null;       
    });       

     
    window.onbeforeunload = function() {       
     if(is_form_changed(_f)) {       
            return prompt;       
        }  
    }       
}     
     
function is_form_changed(f) {       
    var changed = false;       
    $(':text, :password, textarea', f).each(function() {       
        var _v = $(this).attr('_value');       
        if(typeof(_v) == 'undefined')   _v = '';       
        if(_v != $(this).val()) changed = true;       
    });       
     
    $(':checkbox, :radio', f).each(function() {       
        var _v = this.checked ? 'on' : 'off';     
        if(_v != $(this).attr('_value')) changed = true;       
    });       
      
    $('select', f).each(function() {       
        var _v = $(this).attr('_value');       
        if(typeof(_v) == 'undefined')   _v = '';       
        if(_v != this.options[this.selectedIndex].value) changed = true;     
    });       
    return changed;       
}

$(function() {       
    $('form').enable_changed_form_confirm( "您确定不保存就离开页面吗?" );       
});

 

 

以上脚本引自网上高手所写,很好用!引用以上js之前需要引入jQuery脚本文件!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值