Asp.net 后台调用js方法

本文介绍了ASP.NET后台调用JavaScript的四种方法:1) 使用Response.Write,但只能调用内部函数;2) 通过ClientScript.RegisterStartupScript,可以直接调用脚本文件中的函数,更为方便;3) 利用ScriptManager.RegisterStartupScript,适用于使用Ajax的页面;4) 通过添加控件Attributes,如Button1.Attributes.Add('onclick', 'MyFun();'),需在初始化过程中添加。" 44236319,1468529,Linux环境下搭建嵌入式开发环境步骤详解,"['嵌入式开发', 'Linux', '编译工具', 'u-boot', '网络服务']

1. 用Response.Write方法

  代码如下:

 Response.Write("<script type='text/javascript'>alert("XXX");</script>");

  此方只能调用内部函数,具体调用自定义的函数只能在Response.Write写上函数定 义,比如

  Response.Write("<script type='text/javascript'>function myfun(){}</script>");

2.ClientScript.RegisterStartupScript方法

  代码如下:在想调用某个javascript脚本函数的地方添加代码,
(1)在脚本文件中定义MyFun()。

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

(2)直接在ClientScript.RegisterStartupScript里面写

ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>function MyFun(){}</script>");

第一个参数: 指当前页面;
第二个参数:脚本函数的名字,随便起;
第三个参数: 指脚本内容。
这个方法比Response.Write更方便一些,可以直接调用脚本文件中的自定义函数。

3.ScriptManager.RegisterStartupScript方法

如果页面中不用Ajax,cs中运行某段js代码方式可以是: Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>window.open('default2.aspx')</script>");

如果页面中使用了Ajax ,则上述代码即使执行也无效果。

对这种情况我们通常采用: ScriptManager.RegisterStartupScript(this.Button1, this.GetType(), "alertScript", "window.open('default2.aspx');", true);

其中第一个参数为要注册脚本的控件ID,试了一下,只要是本页面的就行。

第二个参数为注册脚本控件类型,是控件还是this的GetType()都可以,typeOf(string)也没问题.

第三个脚本函数的名字,随便起。

第四个是脚本内容。

第五个是标明是否再添加脚本标签,如果第四个参数里包含了标签,此处则为false,否则为true。

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

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值