当前位置:编程学习 > C#/ASP.NET >>

Page.ClientScript.RegisterStartupScript 没什么没有执行?

Page.ClientScript.RegisterStartupScript 没什么没有执行?

代码:
 protected void Page_Load(object sender, EventArgs e)
    {
                 
            StringBuilder Builder = new StringBuilder();
            Builder.Append("<script language='javascript' defer>");
            Builder.AppendFormat("alert('{0}');", "你无此操作权限!");
            Builder.AppendFormat("top.location.href='{0}'", "/");
            Builder.Append("</script>");
            Page.ClientScript.RegisterStartupScript(this.GetType(),"警告!", Builder.ToString());   ///这句没有执行            
            ////Response.Write(Builder.ToString()); ///如果把上句改成这句是可以的            
        }

说明:这个页面代码是框架结构的左框架,如果该段代码是在独立的页面,Page.ClientScript.RegisterStartupScript是能够执行的。不知如何使得Page.ClientScript.RegisterStartupScript。请指教。
         --------------------编程问答-------------------- Page.ClientScript.RegisterClientScript行? --------------------编程问答-------------------- 是的,这段代码是左框架页的代码。问题是不是出在this上呢? --------------------编程问答-------------------- 自己顶一下。没人回答么? --------------------编程问答-------------------- 是的,我最近刚做过,自己试一下就知道了! --------------------编程问答-------------------- 特别是在框架网页中,引用对象之间的父子关系要很清楚,否则就不行! --------------------编程问答--------------------      public void Page_Load(Object sender, EventArgs e)
      {

        if (!this.IsStartupScriptRegistered("Startup"))
        {
          // Form the script to be registered at client side.
          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>";
          this.RegisterStartupScript("Startup", scriptString);
        }
      } --------------------编程问答-------------------- this.GetType() 可能得到是Web.From 吧 --------------------编程问答-------------------- 不妨写在httpmodule里
--------------------编程问答--------------------
引用 2 楼 xtqyeah 的回复:
是的,这段代码是左框架页的代码。问题是不是出在this上呢?

是的 --------------------编程问答-------------------- 怎么改啊??我也碰到类似的问题 

  Page.ClientScript.RegisterStartupScript(this.GetType(),"警告!", Builder.ToString()); ///这句没有执行   
  ////Response.Write(Builder.ToString()); ///如果把上句改成这句是可以的  


 
 求助一下 --------------------编程问答--------------------  不执行有二种可能是你的JS拼接错误, 所以不会执行 

 Builder.Append("<script language='javascript' defer>");
 defer  这是干什么?


  Page.RegisterStartupScript("警告", "<script>alert('你无此操作权限');</script>"); 
试试看这样
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,