我的源码如下,我想实现就是跳出一个对话框,然后等待3秒自动跳转,请问大家怎么改protected void queding_Click(object sender, EventArgs e)
    {
        if(this.xmima.Text.ToString()==this.qrxmm.Text.ToString())
        {
            string mima = this.qrxmm.Text.ToString();
            string sfzh = Session["sfzh"].ToString();
            string lianjie = ConfigurationManager.ConnectionStrings["lianjieshujuku"].ConnectionString;
            SqlConnection conn = new SqlConnection(lianjie);
            conn.Open();
            SqlCommand cmd = new SqlCommand();
            cmd.Connection = conn;
            cmd.Parameters.AddWithValue("@mima", mima);
            cmd.Parameters.AddWithValue("@sfzh", sfzh);            cmd.CommandText = "Update userinfo set [密码]=@mima where [身份证号]=@sfzh";
            int ivalue=cmd.ExecuteNonQuery();
            if(ivalue>0)
            {
                
                Response.Write("您的密码已经修改成功!请使用新的密码登陆!3秒钟后自动转到登陆页面!");
                Thread.Sleep(3000);
                Response.Redirect("../Default.aspx");
            }
        }
        else
        {
            Response.Write("<script>alert('你的两次密码输入不一致!');</script>");
        }
       
    }
其中就是以下代码怎么改if(ivalue>0)
            {
                
                Response.Write("您的密码已经修改成功!请使用新的密码登陆!3秒钟后自动转到登陆页面!");
                Thread.Sleep(4000);
                Response.Redirect("../Default.aspx");
            }

解决方案 »

  1.   

    Response.Write("您的密码已经修改成功!请使用新的密码登陆!3秒钟后自动转到登陆页面!");这里面加一段js,等待3秒跳转
      

  2.   

    加个setTimeout调转
      

  3.   

    简单的做法是操作成功后在页面中显示倒计时,然后跳转到新页面。http://www.cnblogs.com/52net/archive/2012/06/30/2571004.html
      

  4.   


    if(ivalue>0)
    {
        Response.Write("<script>setTimeout(\"top.location.href = '../Default.aspx'\",3000);alert('您的密码已经修改成功!请使用新的密码登陆!3秒钟后自动转到登陆页面!');>");
    }
      

  5.   

    不知道里面的单双引号对不对,手打的,你可以将<script>中间的在前端封装成一个函数,然后后端调用即可,类似于你调用alert这样的。
      

  6.   

    用js的回调函数触发settimeOut,亦或者在后台用一个微软自带的定时器控件。
      

  7.   

    最基本的原理,就是对于用户交互程序设计,要会设计为“两阶段”的流程。你画出一个流程图就能发现问题。不会设计软件的人可能会在流程图上画一个加工处理活动(画成方框),里边写上“显示等待3秒钟”,这显然是坑爹的流程图,因为流程图上不可能有这种加工处理。流程图上,当给用户显示提示时,第一个流程图就结束了。然后当定时触发了后续操作时,下一个流程图开始启动。“Thread.Sleep(3000); ”这种代码是想当然的,初学者最容易用这种思维方式。
      

  8.   

    这个使用jquery应该很容易,推荐使用http://layer.layui.com/ 这里面有你要的。很简单的