Page.RegisterStartupScript 的用法

来源:互联网 发布:淘宝退款原因 其他 编辑:程序博客网 时间:2024/04/30 07:17

轉自:http://www.cnblogs.com/jxyxhz/archive/2008/11/25/1340432.html

Page_load调用JS函数以及confirm的用法

protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            //Page.RegisterStartupScript("","<script>aa()</script>");
            Page.RegisterStartupScript("", "<script>aa(),bb()</script>");
           
        }
       
    }


    protected void Button1_Click(object sender, EventArgs e)
    {
        Page.RegisterStartupScript("", "<script>bb()</script>");
       Response.Write("<script>if(confirm('确定转向百度,取消打开Google')){location='http://www.baidu.com';}else{window.open('http://www.google.com');}</script>");
    }

 

 

<script type="text/javascript">
        function aa()
        {
            document.getElementById("txtlove").value="Page_load调用函数我不爱你!"
        }   
        function bb()
        {
                
            if(confirm("确定要转向吗?"))
             {
                window.open("Default.aspx");
             }
             else
             {
               window.open("Default2.aspx");    
             }
        }
    </script>

Page.RegisterStartupScript  的用法  轉自:http://blog.csdn.net/baikangwang/archive/2007/05/16/1611682.aspx

一个简单例子:  

   Page.RegisterStartupScript("1","<script   language='javascript'>");  
  Page.RegisterStartupScript(
"2","window.alert('Is   ME?');");  
  Page.RegisterStartupScript(
"3","</script>");  
  From   MSDN的例子:  
  String   scriptString   
=   "<script   language=JavaScript>   function   DoClick()   {";  
                scriptString   
+=   "showMessage2.innerHTML='<h4>Welcome   to   Microsoft   .NET!</h4>'}";  
                scriptString   
+=   "function   Page_Load(){   showMessage1.innerHTML=";  
                      scriptString   
+=   "'<h4>RegisterStartupScript   Example</h4>'}<";  
                scriptString   
+=   "/";  
                scriptString   
+=   "script>";  
                   
                        
if(!this.IsStartupScriptRegistered("Startup"))  
                    
this.RegisterStartupScript("Startup",   scriptString);   


   
  *   都是写在Page_Load里的  

例子:  

   Page.RegisterStartupScript("CloseAndRefresh",   "<script   language='javascript'>window.close);window.opener=null;window.parent.location.href='mydocument.aspx';</script>")  
   
  
1、Page.RegisterStartupScript(12)  
        参数1是这段脚本的名称,有点象控件的name;参数2是脚本组成的字符串。  
  
2、window.close()  
        关闭当前窗口。  
  
3、window.parent.location.href='mydocument.aspx'  
        将父窗口的连接地址重写,也就是刷新一下。  
  
4、window.opener=null;  
        将父窗口的句柄清掉。  
  注:再次重申,window.opener
=null;要放在window.parent.location.href='mydocument.aspx'之后。因为先清掉句柄的话,就不能  
  控制父窗口的刷新了。

page.registerstartupscript的用法

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

 轉自:http://hi.baidu.com/wyy99520/blog/item/08bb950a5171311995ca6bb0.html

    [C#]
    public virtual void RegisterStartupScript(
     string key,
      string script
    );
参数
    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='/webjx/"+url+"';</script>");
}
}


原创粉丝点击