asp.net 对话框提示

来源:百度知道 编辑:UC知道 时间:2024/05/21 11:39:51
我在很多情况下,要用到弹出式对话框来提醒用户操作
我使用:
Response.Write("<script language='javascript'>alert('请先保存修改内容!');</script>");
来做,

但是问题是这句话自动输入在源码的最上面,导致网页的样式失效,请问高手如何解决!
去掉language='javascript' 是不行的,

写成 Response.Write("<script>alert('请先保存修改内容!');</script>");
Response.Write("<script>document.location=document.location;</script>");
是从新定向到该页面吧,这样样式虽然是行了,但是控件中的信息没有了,viewstate被清空了,不符合我的要求

我现在使用的办法是在页面加一个隐形的label,写成:
this.lblerror.Text = "<script language='javascript'>alert('请先保存修改内容!');</script>";

不知道还有没有更好的方法

是脚本执行后页面样式发生变化吗?我以前也遇见过。
试试这个代码,应该可以解决:
this.RegisterStartupScript("", "<script language=javascript>alert('要提示的信息!')</script>");
代替你的
Response.Write("<script language='javascript'>alert('请先保存修改内容!');</script>");

你试试,这个人家的经验,(我转载的)

vs2005中的response.write()问题

ASP.NET 2.0里默认使用<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">文档定义模型,这个dtd的规则与以前的不同,因此,许多以前写的代码在新标准下无法正常运行。

-----------------------------------------------

Response.Write 表示在当然输-出流位置写入数据

ASP.NET 中不要随便使用 Response.Write,会打乱 ASP.NET 的输出流顺序

在 .aspx.cs 中使用 Response.Write 的输出会出现在页面的最顶部

会导致页面布局得不到预期效果

-----------------------------