当我想要添加一段数据成功的时候,弹出添加数据成功,我就 Response.Write("<script>window.alert('新增数据成功!') </script>");  然后我想只在GRidView里面显示新增的数据,我就把控件里面的值回传作为查询依据,结果,不弹出“新增数据成功了”
看代码
 SqlDataAdapter customersTableAdapter =
                new SqlDataAdapter(SqlDataSource1.SelectCommand, SqlDataSource1.ConnectionString);
                DataTable hiberarchyTable = new DataTable();
                customersTableAdapter.Fill(hiberarchyTable);
                SqlCommandBuilder sqlCommandBuilder = new SqlCommandBuilder(customersTableAdapter);
                DataRow newRow = hiberarchyTable.NewRow();
                newRow["guotuzhenghao"] = guotuzhenghao.Value;
                newRow["zuoluo"] = zuoluo.Value;
                newRow["shiyongzhe"] = shiyongzhe.Value;
                newRow["dihao"] = dihao.Value;
                newRow["tuhao"] = tuhao.Value;
                newRow["yongtu"] = yongtu.Value;
                newRow["dengji"] = dengji.Value;
                newRow["churangStart"] = churangStart.Value;
                newRow["charangend"] = charangend.Value;
                newRow["churangnianxian"] = churangnianxian.Value;
                newRow["beizhu"] = beizhu.Value;
                newRow["fazhengjiguan"] = fazhengjiguan.Value;
                newRow["fazhengriqi"] = fazhengriqi.Value;
                newRow["gongtanmianji"] = gongtanmianji.Value;
                newRow["shiyongquanmianji"] = shiyongquanmianji.Value;                //  newRow["s2"] = "s2";
                hiberarchyTable.Rows.Add(newRow);
                customersTableAdapter.Update(hiberarchyTable);
            }
            catch (Exception we)
            {
                Response.Write("<script>window.alert('新增数据出错!') </script>");
                return;
            }            Response.Write("<script>window.alert('新增数据成功!') </script>");
            Response.Redirect("manage_add_guotushiyong.aspx?guotuzhenghao=" + guotuzhenghao.Value + "&shiyongzhe=" + shiyongzhe.Value + "&zuoluo=" + zuoluo.Value + "");

解决方案 »

  1.   

    把弹出提示信息和跳转页都写在JS脚本里.用JS来实现跳转页.
      

  2.   

    这样不会弹出的.因为Response.Write是在当前的页面输出.但是下面你已经跳转到其它页面了,当然也就看不到弹出的信息了.
    string loation = "manage_add_guotushiyong.aspx?guotuzhenghao=" + guotuzhenghao.Value + "&shiyongzhe=" + shiyongzhe.Value + "&zuoluo=" + zuoluo.Value + "";Response.Write("<script>window.alert('新增数据成功!');window.location='"+loation+"';</script>");
    这样就行了.
      

  3.   

    Response.Write("<script>window.alert('新增数据成功!') </script>");
                Response.Redirect("            Response.Redirect 调用之前不能有输出如Response.Write(
      

  4.   

    Response.Write() 这个向页面输出而已<script>window.alert('新增数据成功!') </script>
    要到浏览器里才能解析Response.Redirect 
    你在服务器端就让其导向了发到浏览器里的当然是manage_add_guotushiyong.aspx这个页面
      

  5.   


    Response.Write(" <script>window.alert('新增数据成功!');window.location='"+loation+"'; </script>"); 
      

  6.   


    Response.Write(" <script>window.alert('新增数据成功!');window.location='"+loation+"'; </script>"); 
      

  7.   

    当我想要添加一段数据成功的时候,弹出添加数据成功,我就 Response.Write(" <script>window.alert('新增数据成功!') </script>");  然后我想只在GRidView里面显示新增的数据,我就把控件里面的值回传作为查询依据,结果,不弹出“新增数据成功了” 
      

  8.   

    Asp.net中实现页面跳转的三种方法比较,现在总结如下:  
    1 Response.Redirect这个跳转页面的方法跳转的速度不快,因为它要走2个来回(2次postback),但他可以跳  转到任何页面,没有站点页面限制(即可以由雅虎跳到新浪),同时不能跳过登录保护。但速度慢是其最大缺陷!Redirect跳转机制:首先是发送一个http请求到客户端,通知需要跳转到新页面,然后客户端在发送跳转请求到服务器端。需要注意的是跳转后内部空间保存的所有数据信息将会丢失,所以需要用到session。 2  Server.Transfer速度快,只需要一次postback ,但是。他必须是在同一个站点下,因为它是server的一个方法。另外,他能跳过登录保护。你可以写个小程序试试:设计一个由页面一到页面二的跳转,但要进入到页面二需要登录,form认证,但如果跳转语句使用transfer的话,那就不会弹出登录页面了。这个方法的重定向请求是发生在服务器端,所以浏览器的url地址仍然保留的是原页面的地址! 3  Sever.Execute这种页面导航方式类似于针对ASPX页面的一次函数调用,被调用的页面能够访问发出调用页面的表单数据和查询字符串集合,所以要把被调用页面Page指令的EnableViewStateMac属性设置成False。默认情况下,被调用页面的输出追加到当前应答流。但是,Server.Execute方法有一个重载的方法,允许通过一个TextWriter对象(或者它的子对象,例如StringWriter对象)获取被调用页面的输出,而不是直接追加到输出流,这样,在原始页面中可以方便地调整被调用页面输出结果的位置。 
      

  9.   

     Response.Write("<script>window.alert('新增数据成功!') </script>");
    Server.Transfer("manage_add_guotushiyong.aspx?guotuzhenghao=" + guotuzhenghao.Value + "&shiyongzhe=" + shiyongzhe.Value + "&zuoluo=" + zuoluo.Value + "");这样是可以弹筐后在跳转的 Redirect 是重定向 注意看 跳转的时候 地址栏的路径都改变了 是重新请求的 所以不会弹筐 看看他们的区分和比较 就明白了