当单击页面右上角“×”,当页面有数据改动的时候,提示保存信息,如何判断页面上的数据是否有改变?

解决方案 »

  1.   

    给你个简单的例子
    <HTML> 
    <HEAD> 
    <TITLE>test</TITLE> 
    </HEAD> <BODY> 
    <FORM METHOD=POST ACTION=""> 
    <INPUT TYPE="button" value="save" onclick="bypassCheck();saveClick()"> 
    </FORM> 
    </BODY> 
    </HTML> 
    <script language="javascript"> var g_blnCheckUnload = true; 
    function RunOnBeforeUnload() 

        if(g_blnCheckUnload) 
        { 
            window.event.returnValue = '你将丢失没有保存的内容'; 
        } 
    } function bypassCheck() 

        g_blnCheckUnload  = false; 

    onbeforeunload=RunOnBeforeUnload; 
    </script> 
      

  2.   

    页面上放一个<input type="hidden" name="biaoshi" value="0">
    写一个方法:
    <Script Language="javascript">
    var temp="";
    function getUpdate1(m)
    {temp=document.all(m).value;
     }function getUpdate2(m)
    {
    var temp2=document.all(m).value;
    if(temp!=temp2)
        {
         form.biaoshi.value=1;
         }
     }</Script>
    每个可以编辑的组件都调用此方法如下:<input type="text"  name="txt1"   onFocus="javascript:getUpdate1('txt1')"  onBlur="javascript:getUpdate2('txt1')"     value="" >//还可以调用onchange事件进行操作
    保存的时候获取form.biaoshi.value值,看是否为1,0表示没改变,1表示有数据更改。
      

  3.   

    楼主调用onchange事件吧,如果某个输入框调用了onchange事件,那就证明数据改变了,或者和原来的值进行一一对比
      

  4.   

    <HTML> 
    <HEAD> 
    <TITLE>test</TITLE> 
    </HEAD> <BODY> 
    <FORM METHOD=POST ACTION=""> 
    <input type="text" id="username" value="xshf12345" /></FORM>
    <script language="javascript">        var oldValue = document.getElementById("username").value;
        function RunOnBeforeUnload() {
            var newValue = document.getElementById("username").value;
            if (oldValue != newValue) {
     
                window.event.returnValue = '你将丢失没有保存的内容';
            }
        }    onbeforeunload = RunOnBeforeUnload; 
    </script> 
    </BODY> 
    </HTML> 
     
      

  5.   

    int flag=0;
    就是一个状态的问题 
    当指定地方的数据修改了 1
    表示修改了 然后再触发保存按钮就是了 一直为0则直接关闭
    这个WINFROM的思路 在WEB应该也是可用的
      

  6.   


    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <TITLE> New Document </TITLE>
    <script language="javascript">
     function test(event) {
    // if 有数据更新
     if(confirm('要保存吗?')){
    //...
    alert('保存成功');
     }
     }
      </script>
    </head>
    <body onbeforeunload="test()">
    </body>
    </HTML>
      

  7.   

    在onbeforeunload事件处理函数中判断就行了,这个事件会在你点击了浏览器的“关闭”或者“刷新”按钮后出发!