我使用Response.Write("<script language='javascript'>alert('申請成功!')</script>");提交后確認后 表單位置都跑位了!怎麼辦?
應該是Response.Write 定位問題,我想實現的效果是,提交表單后,彈出對話框(或者不用對話框了,請大家建議好的方法),告訴使用者,提交成功與否!

解决方案 »

  1.   

    Response.Write 不要用这种方式。
    换成 ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<script>MyFun();</script>");
      

  2.   

    加上这句试试:Response.Write("<script>window.location.href=window.location.href</script>");   //刷新本页
      

  3.   

    Response.Write("<script language='javascript'>alert('申請功!');window.location='asdasd.aspx'</script>");你刷新一下。
      

  4.   

    请记住,后台输出脚本的时候,请千万不要用response.write,用clientscript.regester.........
      

  5.   

    使用Response.Write,这种方法会把JS代码写在页面的最顶部(<html>的前面):
    RegisterStartupScript,这种方法会把JS代码嵌入在页面的底部、表单的最后 (</form>前面),适用于要在页面控件加载完成后运行的JS代码
      

  6.   

    Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('申請成功');</script>");Response.Write 这跟定位没有关系.Response.Write表示在当前输-出流位置写入数据,它会打乱ASP.NET的输出顺序.所以你的样式会混乱Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('申請成功');</script>");
    用这个代替吧
      

  7.   

    Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('申請成功');</script>");
      

  8.   

    Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('申請成功');</script>");这个是最好的
      

  9.   

    应该是你样式的问题 仔细看看你的样式  可先注释掉 Response.Write("...");看看样式变没变
      

  10.   

    LZ的问题在于:
    没有理解Response.Write和RegisterStartupScript的差别:Response.Write以流的方式写入前台页面。你可以在生成页面的查看源代码,你要加入的<script language='javascript'>alert('申請成功!')</script>放在了页面文件的最前面,所以会导致页面的跑位RegisterStartupScript将注册的脚本内容写入<form>标签之后,这才是你所想要的,如下:
    Page.ClientScript.RegisterStartupScript(GetType(), "key", "<script>alert('申請成功');</script>");
      

  11.   

    Page.ClientScript.RegisterStartupScript(GetType(), "", "<script>alert('申請成功');</script>");
      

  12.   

    Page.ClientScript.RegisterClientScriptBlock(typeof(string), "", @"<script>alert('申请成功!')</script>");
      

  13.   

    ASP.NET中返回脚本不要再使用Response.Write了  可以使用ClientScript脚本管理器  
      

  14.   

    Response.Write();会破坏页面布局,原理如梦大大已经说了。
    学习。