柔城

SOSOFT articles

asp.net后台注册js的四种方法

1. 用Response.Write方法  代码如下:  Response.Write("<script type='text/javascript'>alert("keleyi.com");</script>");  此方法缺陷就是不能调用脚本文件中的自定义的函数,只能调用内部函数,具体调用自定义的函数只能在Response.Write写上函数定 义,比如  Response.Write("<script type='text/javascript'>function myfun(){}</script>");

2.用ClientScript类

  代码如下:在想调用某个javascript脚本函数的地方添加代码,注意要保证MyFun已经在脚本文件中定义过了。

  ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<script>MyFun();</script>");

  这个方法比Response.Write更方便一些,可以直接调用脚本文件中的自定义函数。


3.普通的添加控件的Attributes属性

  对于普通按钮就是:Button1.Attributes.Add("onclick","MyFun();");

  只能在Onload中或类似于onload的初始化过程中添加才有效。而且是先执行脚本函数,无法改变执行顺序。

注意,以上所有方法中,后台代码都不能有转化当前页的代码,比如Redirect等,要把转页代码放在脚本里面

 

 

 

 

 

 

4.后台加载数据作为js参数调用js方法  num 是方法注册名, 每调用一次, 注册名不能一样

 

      int num = 0;
            foreach (RoadStation rr in r)
            {
                
                num++;
            ScriptManager.RegisterStartupScript(this,this.GetType(), num.ToString(), string.Format("addTr('{0}','{1}');", rr.F_stationName, rr.F_time), true);
         
            }

posted on 2014-01-24 12:21  柔城  阅读(3213)  评论(0编辑  收藏  举报

导航