C#中Response.write与Response.Redirect同时使用

2024-12-21 10:42:37
推荐回答(5个)
回答1:

Response.Write("");

在当前页面添加了一个JS事件;该事件会在页面载入完成后,再执行客户端JS脚本;

Response.Redirect("Welcome.aspx");

在页面载入到这个地方的时候,已经跳走了,所以没有给 客户端的JS脚本有机会;

一个是服务器端跳转,一个是客户端JS脚本;
如果你用的是客户端JS跳转就没问题;

回答2:

你的这段代码本身没什么问题。执行后不谈alert框那报什么错呢?你可以先看看welcome.aspx页能不能正常打开,因为if下有两条语句,第2条不通的话是会报错就不会有第一条的效果了。建议你在if处设置一个断点,F10单步跟踪,看看能不能执行进去。不行的话那就是你的txttitle并不是空的,查看它的属性再看看。你这段代码我直接复制过来再vs2005上执行提示“找不到资源”,原因是我根本没有建立welcome.aspx页,删掉"Response.Redirect("Welcome.aspx");"这句之后执行就没问题了,能弹出alert警告提示。

回答3:

Response.Redirect 直接结束当前页面,不执行后续的HMTL内容。

你需要改成

if (txtTitle.Text.Trim() == "")
{
Response.Write("");
}

回答4:

Response.Write("");
Response.Write("");

上面的方法会在点击提示确定后等待五秒钟跳转到welcome.aspx上,具体等待时间你可以调节content的大小

祝你好运!

回答5:

其实是弹了的。但是由于使用了Redirect,执行了跳转,所以你看不到了。
你可以用RunScript.alertThenRedirect("标题不能为空!","Welcome.aspx")