首页 > 学院 > 开发设计 > 正文

使用 .netScriptManager和UpdatePanel控件 无法弹出提示窗口的问题 解决办法

2019-11-17 01:27:07
字体:
来源:转载
供稿:网友

使用 .netScriptManager和UpdatePanel控件 无法弹出提示窗口的问题 解决办法

.net使用静态刷新控件ScriptManager和UpdatePanel无法弹出窗口如何解决

如果在页面里面用到了ScriptManager,里面再放个更新面板,那客户端的弹出对话框就不起作用了。

例如:

Page.ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('添加信息成功!');</script>");

这句验证就失去了作用。

那就要到以下的:

ScriptManager.RegisterStartupScript(this.btnOK,this.GetType(),"alert","alert('添加信息成功!');",true);

第一个参数:是哪个按钮要使用的这个JS。

最后一个参数:使用了true,所以前面的js里面就不能添加</script>。添加就会出错的。

UpdatePannel中弹窗这样写:

Stringcstext1=String.Format("alert('{0}');","查询到1233条数据!");

ScriptManager.RegisterClientScriptBlock(UpdatePanel1,UpdatePanel1.GetType(),"message",cstext1,true);

.Net 弹出框口汇总

vkesoft.com

在.NET WEB应用上弹出消息框,我试验成功的有下面的几种,若有其他方法,望您不吝赐教。

1.只弹出提示消息。

方法一:

string script = "<script> alert('删除成功!') </script>"; Page.RegisterStartupScript("",script);

方法二:

Response.Write("<script>alert('删除成功!')</script>");

方法三:

同下面的方法一。

2.需要用户确定的弹出消息。

方法一:

添加引用System.Windows.Forms.dll

添加命名空间using System.Windows.Forms;(然后可能需要重新生成一下文件)

然后同Winform里的MessageBox一样了(MessageBox.Show(参数1,......));

例: if (MessageBox.Show("你确定要删除?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes){} else{}

方法二:

在Page_load()或其他合适地方为按钮添加新的属性:

btnDeleteAdmin.Attributes.Add("onclick", "return confirm('你确认要删除吗?')");

经常遇到这样的问题:便用Response.write()方法常常会导致页面布局改变,原因是因为script脚本改变了布局的CSS样式,可以使用客户端注册脚本,这样会解决页面变型的问题!

各种打开新页面的方式总结

推荐使用方法

【1】Page.RegisterStartupScript("ServiceManHistoryButtonClick", "<script>window.open('" + url + "');</script>");

【2】 Page.RegisterStartupScript("", "<script>alert('投票成功,感谢您的参与!')</script>");

【0】最常用的打开方式

Response.Write("<script language='javascript'>window.open('"+ url+"');</script>");

【1】直接转向新的页面,原窗口被代替;

Response.Redirect("XXX.aspx",true)

【2】原窗口保留,另外新增一个新页面;Response.Write("<script>window.open('XXX.aspx','_blank')</script>")

【3】打开新的页面,原窗口被代替;

Response.Write("<script>window.location='XXX.aspx'</script>")

【4】打开新的页面;

Server.Transfer("XXX.aspx")

说明,常用于传递session变量的页面跳转!

【5】原窗口保留,以对话框形式打开新窗口;

Response.Write("<script>window.showModelessDialog('XXX.aspx')</script>")

【6】对话框形式打开新窗口,原窗口被代替;

Response.Write("<script>window.showModelDialog('XXX.aspx')</script>")

【7】打开简洁窗口Respose.Write("<scriptlanguage='Javascript'>window.open('"+url+"','','resizable=1,scrollbars=0,status=1,menubar=no,toolbar=no,location=no, menu=no');</script>");


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表