我想打开页面后就开始定时刷新这个页面,当我点击某个按钮<asp:button ruanat="server"...</asp:button>后就停止定时刷新
我用 <script language="javascript" type="text/javascript">
        var timeHandler;
        timeHandler = setTimeout("location.href='Main.aspx'",2000);
        function def()
        {
            clearTimeout(timeHandler);
        }
    </script>
</head>然后
<asp:Button runat="server" ID="Button_CallNext" Text="呼叫" onclick="Button_Call_Click" 
OnClientClick="return def();"/>结果是不起作用,刷新停止不了,不知道该怎么实现 特此请教

解决方案 »

  1.   

    你在ClientClick的时候,确实是停止了,但是执行了Click后,回刷导致又重新开始执行timeHandler = setTimeout("location.href='Main.aspx'",2000); 笨办法,如下(其实就是多引入一个Hidden项,进行判断)
             <script language="javascript" type="text/javascript"> 
            var timeHandler; 
            var flag=document.getElementById("hidden1");
            if(flag.value=="0")//当Flag为0时才执行刷新
            {
                timeHandler = setTimeout("location.href='Main.aspx'",2000); 
            }

            function def() 
            { 
                flag.value="1";            clearTimeout(timeHandler); 
            } 
        </script> 
    </head> 然后 
    <input type="hidden" id="hidden1" value="0"/>
    <asp:Button runat="server" ID="Button_CallNext" Text="呼叫" onclick="Button_Call_Click" 
    OnClientClick="return def();"/> 
      

  2.   

    clearTimeout(timeHandler); 
    return false;