弹出式窗口不出来?

Riygpw 2010-09-15 08:36:17
有一个录入数据的页面,在插入前检查用户输入的数据是否已存在。如果已存在,用一个弹出式窗口提醒用户,中止程序继续运行,返回验证前页面。
代码:Response.Write("<script>alert('代码已经存在,请重新输入!')</script>");

问题:
1)上述代码没有弹出窗口(浏览器允许弹出窗口,IE,FF均没有);
2)代码没有中止,继续执行其后的全部代码。

请高人指点。
...全文
343 35 打赏 收藏 转发到动态 举报
写回复
用AI写文章
35 条回复
切换为时间正序
请发表友善的回复…
发表回复
hcwacs 2010-09-16
  • 打赏
  • 举报
回复
我也想知道答案
苏州牛恋歌 2010-09-16
  • 打赏
  • 举报
回复
Response.Write("<script>var getvalue=window.confirm('该代码已经存在,请重新输入或留空!'); if (getvalue){window.location='Default.aspx'}</script>");

这样应该行了吧
yuxh81 2010-09-16
  • 打赏
  • 举报
回复
关键是注册脚本后,页面重定向了
苏州牛恋歌 2010-09-16
  • 打赏
  • 举报
回复

或者
ScriptManager.RegisterStartupScript(UpdatePanel1, typeof(UpdatePanel), Guid.NewGuid().ToString(), "alert('该代码已经存在,请重新输入或留空!')", true);

其中UpdatePanel1 是你UpdatePanel 控件的ID
苏州牛恋歌 2010-09-16
  • 打赏
  • 举报
回复
你也没有没有UpdatePanel 控件啊 有就这样

ScriptManager.RegisterClientScriptBlock(UpdatePanel1, typeof(UpdatePanel), "aler", "alert('该代码已经存在,请重新输入或留空!');", true);

Riygpw 2010-09-16
  • 打赏
  • 举报
回复
我这个数据录入组件(TEXTBOX)是在一个UpdatePanel中
Riygpw 2010-09-16
  • 打赏
  • 举报
回复
Response.Write("<script>alert('代码已经存在,请重新输入!');</script>");

也不行.
Riygpw 2010-09-16
  • 打赏
  • 举报
回复
代码:
1 if (code != "" || code != null)
2 {
3 ScriptManager.RegisterStartupScript(this, typeof(Page), Guid.NewGuid().ToString(), "alert('该代码已经存在,请重新输入或留空!')", true);
4 Response.Redirect("~/Basis/coefficientList.aspx");
}

现在的问题是:如果3行后面没有任何代码,可以弹出窗口,按下确定后,返回到原来的录入页面;如果3行后面有代码,则不弹出窗口,程序继续执行;


如何才能弹出窗口,并且用户点南确定后,程序中止执行返回原录入界面?

苏州牛恋歌 2010-09-16
  • 打赏
  • 举报
回复
我搞成了Redirect方法了 不要那个False 你加个“;” 这个试试
Response.Write("<script>alert('代码已经存在,请重新输入!');</script>");
qzyuanmu 2010-09-16
  • 打赏
  • 举报
回复
记得 return 一下
苏州牛恋歌 2010-09-16
  • 打赏
  • 举报
回复
Response.Write( " <script language=javascript> alert( '代码已经存在,请重新输入!'); </script> ",false);
苏州牛恋歌 2010-09-16
  • 打赏
  • 举报
回复
Response.Write("<script>alert('代码已经存在,请重新输入!')</script>",false);
wwfgu00ing 2010-09-16
  • 打赏
  • 举报
回复
前后代码都贴出来看看啊
ylx1989 2010-09-16
  • 打赏
  • 举报
回复
看走到这一步了没有!
daifangci 2010-09-16
  • 打赏
  • 举报
回复
用页面对象
Page.ClientScript.RegisterStartupScript(this.GetType(), "d", "alert('该代码已经存在,请重新输入或留空!');", true);
ltcszk 2010-09-16
  • 打赏
  • 举报
回复
拿某人的话来说用response.write输出js都应该被开除

上面已经有3个人给出正确的解答了
czhhlove 2010-09-16
  • 打赏
  • 举报
回复
lz是不是用ajax控件了,如果用了,弹出窗口就不能用response.write()了;
试试这样写:

ScriptManager.RegisterClientScriptBlock(Button1, typeof(Button), "", "alert('该代码已经存在,请重新输入或留空!');window.location.href='Default.aspx';", true);
beg200710 2010-09-16
  • 打赏
  • 举报
回复
Response.Write("<script defer>alert('修改成功!');</script>");
ZhuZhuYuXiang 2010-09-16
  • 打赏
  • 举报
回复
解决办法:
写个JSHelper.cs
public const string WINALERT="<script>window.alert('{0}')</script>";
public const string REDIRECT = "<script>document.location='{0}';</script>";

aspx.cs代码:
this.Response.Write(string.Format(JSHelper.WINALERT, "修改成功!"));

this.Response.Write(string.Format(JSHelper.REDIRECT, "~/Basis/coefficientList.aspx.aspx");
ZhuZhuYuXiang 2010-09-16
  • 打赏
  • 举报
回复
Response.Redirect("~/Basis/coefficientList.aspx");
这句话存在它就不会弹出对话框,redirect是从重定向直接改变地址栏url,直接跳转到其他页面。
加载更多回复(15)

62,272

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧