C#  实现实时3秒跳转页 protected void Binddata()

 

 需要再通用一点的话,把方法参数提出来后如下,各页面调用也方便很多

 

    public static void SuccessReturnScript(System.Web.UI.Page page,string writeControlID,string returnUrl)
        {
            StringBuilder sb 
= new StringBuilder();
            sb.Append(
"<script langage=\"javascript\">"); //用\"转义'

            sb.Append(
"var i=4;");

            sb.Append(
"function out()");

            sb.Append(
"{");

            sb.Append(
"if(i>1){ ");

            sb.Append(
"i--;}");

            sb.Append(
"else {");

            sb.Append(
"location.href=\"" + returnUrl + "\";}");
            sb.Append(
"document.getElementById(\"" + writeControlID + "\").innerHTML=\"操作成功,页面<font color=red>\"+i+\"</font>秒后自动跳转\"; }");

            sb.Append(
"setInterval(\"out()\",1000); "); //每隔一秒发生

            sb.Append(
"</script>");

            page.Controls.Add(
new LiteralControl(sb.ToString()));
        }

 

另外加一个倒计时显示的js代码

为了优化,day只计算了一次。hour,minitus,second,ms则放在里层反复计算

<script type="text/javascript">

 var day=hour=minitus=second=ms=0;
 var targetDate= new Date("2010/08/07 12:00:00");
 var tmp = targetDate - new Date();
 day = Math.floor(tmp / 86400000);
function RefreshTime()
 {
  tmp = (targetDate - new Date()) % 86400000;
  hour=Math.floor(tmp/3600000);
  tmp%=3600000;
  minitus=Math.floor(tmp/60000);
  tmp%=60000;
  second=Math.floor(tmp/1000);
//  ms=tmp-1000*second;
  document.getElementById("m1").innerHTML = "距离" + targetDate + "年还有 " + day + " 天 " + hour + " 小时 " + minitus + " 分 " + second + " 秒 ";
}
setInterval(RefreshTime, 1000);
</script>

 

 


相关文章: