Asp.net中RegisterStartupScript方法的使用

作者:网络 来源:佚名 更新时间:2008-02-06 01:50:23 点击:

msdn如下说:允许 asp.net 服务器控件在 page 中发出客户端脚本块。

[visual basic]
public overridable sub registerstartupscript( _
   byval key as string, _
   byval script as string _
)
参数

key

标识脚本块的唯一键。

script

要发送到客户端的脚本的内容。

以下是一些应用实例:

打开一个新窗口:

page.registerstartupscript("starup", "<script language = 'javascript'>window.open('" + url + "','','toolbar=no,resizable=yes,scrollbars=yes')</script>")

警告窗口

/// <summary>
/// 服务器端弹出alert对话框
/// </summary>
/// <param name="str_message">提示信息,例子:"不能为空!"</param>
/// <param name="page">page类</param>
public void alert(string str_message,page page)
{
page.registerstartupscript("","<script>alert('"+str_message+"');</script>");
}

重载此警告窗口,使某控件获得焦点

/// <summary>
/// 服务器端弹出alert对话框,并使控件获得焦点
/// </summary>
/// <param name="str_ctl_name">获得焦点控件id值,比如:txt_name</param>
/// <param name="str_message">提示信息,例子:"请输入您姓名!"</param>
/// <param name="page">page类</param>
public void alert(string str_ctl_name,string str_message,page page)
{
page.registerstartupscript("","<script>alert('"+str_message+"');document.forms(0)."+str_ctl_name+".focus(); document.forms(0)."+str_ctl_name+".select();</script>");
}

确认对话框

/// <summary>
/// 服务器端弹出confirm对话框
/// </summary>
/// <param name="str_message">提示信息,例子:"您是否确认删除!"</param>
/// <param name="btn">隐藏botton按钮id值,比如:btn_flow</param>
/// <param name="page">page类</param>
public void confirm(string str_message,string btn,page page)
{
page.registerstartupscript("","<script> if (confirm('"+str_message+"')==true){document.forms(0)."+btn+".click();}</script>");
}

重载确认对话框,点击确定触发一个隐藏按钮事件,点击取消触发一个隐藏按钮事件

/// <summary>
/// 服务器端弹出confirm对话框,询问用户准备转向那些操作,包括“确定”和“取消”时的操作
/// </summary>
/// <param name="str_message">提示信息,比如:"成功增加数据,单击\"确定\"按钮填写流程,单击\"取消\"修改数据"</param>
/// <param name="btn_redirect_flow">"确定"按钮id值</param>
/// <param name="btn_redirect_self">"取消"按钮id值</param>
/// <param name="page">page类</param>
public void confirm(string str_message,string btn_redirect_flow,string btn_redirect_self,page page)
{
page.registerstartupscript("","<script> if (confirm('"+str_message+"')==true){document.forms(0)."+btn_redirect_flow+".click();}else{document.forms(0)."+btn_redirect_self+".click();}</script>");
}


获得焦点

/// <summary>
/// 使控件获得焦点
/// </summary>
/// <param name="str_ctl_name">获得焦点控件id值,比如:txt_name</param>
/// <param name="page">page类</param>
public void getfocus(string str_ctl_name,page page)
{
page.registerstartupscript("","<script>document.forms(0)."+str_ctl_name+".focus(); document.forms(0)."+str_ctl_name+".select();</script>");
}

子窗体返回主窗体

///<summary>
///名称:redirect
///功能:子窗体返回主窗体
///参数:url
///返回值:空
///</summary>
public void redirect(string url,page page)
{
if ( session["ifdefault"]!=(object)"default")
{
page.registerstartupscript("","<script>window.top.document.location.href='"+url+"';</script>");
}
}