通常javascript代码可以与HTML标签一起直接放在前 端页面中,但如果JS代码多的话一方面不利于维护,另一方面也对搜索引擎不友好,因为页面因此而变得臃肿;所以一般有良好开发习惯的程序员都会把 javascript代码放到独立的js文件中,其他页面通过引入该js文件来使用相应的 javascript代码。
用如下方法引用JS文件:<script src="script/admin.js" type="text/javascript"></script>。

ASP.NET本身就提供了多种调用javascript脚本的方法,笔者在这里总结了六种调用方法,大家可以根据自己的使用习惯选择相应的调用方式了!

1、直接在前台页面调用自定义的javascript 函数:
很简单,在 head 元素之间加入 script 元素,将 type 元素设置为 " text/javascript "
如:
<head runat="server">
<script type="text/javascript" >
function ShowName(str)
{
alert("十万个为什么的站长是:("+str+")");
}
</script>
<title>using javascript</title>
</head>
之后在body 元素间,通过事件来访问,比如要通过button1 的单击事件(onclientclick)来访问 javascript 函数的ShwoName()的示例如下:

<asp:Button ID="Button1" runat="server" Text="Button" onclientclick="ShowName('伍锐锋')" />
这时运行项目,单击 button时,会显示"十万个为什么 ,的站长是:伍锐锋"这就是在前端页面直接定义及调用javascript函数.

2、在前台通过引入js文件来调用相应的函数:
方法与(1)一样,只不过需要指定要调用的js 文件
示例如下:

<head runat="server">
<script type="text/javascript" src="kenscript.js">
</script>
<title>using javascript</title>
</head>
之后在body 元素间,通过事件来访问, 比如要通过button1 的单击事件(onclientclick)来访问 javascript 函数的示例如下:

//此时 .js文件中必须有 ShowName 方法
<asp:Button ID="Button1" runat="server" Text="Button" onclientclick="ShowName('伍锐锋')" />

3、在后台调用 javascript 函数,函数在.js文件中
前台的head 元素
<head runat="server">
<script type="text/javascript" src="kenscript.js">
</script>
<title>using javascript</title>
</head>
后台的需要添加如下代码
Button1.Attributes.Add("onclick", "showname1(‘伍锐锋’)");

4、在后台调用 javascript 函数,函数写在对应的js文件中,但并没有在前台定义,示例如下:
//获得.js文件
string myscript = "kenscript.js";
//注册.js文件
Page.ClientScript.RegisterClientScriptInclude("myKey", myscript);
 如果此时查看源码,会得到如下代码
//<script src ="kenscript.js" type="text/javascript"><script>

//同上
Button1.Attributes.Add("onclick", "showname1('伍锐锋')");

5. 用Response.Write方法写入脚本
比如在你单击按钮后,先操作数据库,完了后显示已经完成,可以在最后想调用的地方写上
Response.Write("<script type='text/javascript'>alert("操作完成!");</script>");

不过呢,这个方法有个缺陷就是不能调用脚本文件中的自定义的函数,只能调用内部函数,具体调

用自定义的函数只能在Response.Write写上函数定义,比如Response.Write("<script

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

6.用ClientScript类动态添加脚本
用法如下:在想调用某个javascript脚本函数的地方添加代码,注意要保证MyFun已经在脚本文件

中定义过了。
ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<script>MyFun();</script>");

这个方法比Response.Write更方便一些,可以直接调用脚本文件中的自定义函数,不过跟前面几种

相比没那么简洁直观。

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

在脚本里面

最新文章

  1. 初试PHP单元测试TDD之安装PHPUnit
  2. html中的a标签(超链接)的使用
  3. iOS阶段学习第17天笔记(NSFileManager-NSFileHandle-文件操作)
  4. Code First 迁移
  5. BZOJ 3111: [Zjoi2013]蚂蚁寻路
  6. linux下重启oracle服务:监听器和实例
  7. 函数对象适配器之ptr_fun的使用示例
  8. 什么是jetty
  9. 编译osg for android
  10. JSP学习笔记 - 源码 -- JSP Custom Tags -- JSP自定义标记
  11. 一个简单的游标删除SQL SERVER表
  12. jg-table 过程2 ( jgTable )
  13. [ An Ac a Day ^_^ ] hdu 1662 Trees on the level 数据结构 二叉树
  14. ORACLE 博客文章目录(2015
  15. 中国的UED们
  16. SpringMVC中Json数据格式转换
  17. 自定义修改Anaconda Jupyterlab Home目录
  18. Android-动态权限获取
  19. android默认开启adb调试方法分析
  20. HDU1507 Uncle Tom&#39;s Inherited Land* 二分图匹配 匈牙利算法 黑白染色

热门文章

  1. IDisplayTransformation
  2. jquery文字溢出处理,超出变省略号
  3. Python:安装mssql模块功能,并实现与sqlserver连接、查询
  4. Java的数据转换
  5. 不等高cell的搭建(一)
  6. hunnu 修路
  7. MFC架构
  8. 【Origin】时迁念昔
  9. Python学习总结19:类(二)
  10. have you declared this activity in your AndroidManifest.xml