当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > ASP.NET调用javascript脚本的常见方法小结

ASP.NET
使用C# 开发掩码输入文本框
点击DataGrid的列标头在DataGrid最后一行显示该列的和
ASP.NET之Web打印-终极解决篇
SQL Server 2000 Reporting Services: 怎样根据用户的语言偏好显示本地化的信息
利用底层键盘钩子拦载任意按键(回调版)
如何禁止调整自定义控件的尺寸?
用VB6.0编写磁盘格式化程序
Aspx中导Excel
ASP.NET组件设计Step by Step(3)
下面真正开始讲事件的内容
如何有效的使用C#读取文件
如何在C#中加载自己编写的动态链接库(DLL)
Managed DirectX 相关(DirectX.Capture Class Library && DirectShow.NET)
XQuery Reference-from w3schools.com
[译]Visual Basic 2005在语言上的增强(十三)显式的数组范围及小结
lucene的首次应用
[VBA]在后台删除工作表后出现的怪问题
VB.NET 数据库查询 [SQL字符串的生成]
JavaScript调用服务器事件
在Window2003上执行System.Diagnostics.Process.GetProcessesByName等方法失败的原因

ASP.NET调用javascript脚本的常见方法小结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 99 ::
收藏到网摘: n/a

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 函数
示例如下:
复制代码 代码如下:

<asp:Button ID="Button1" runat="server" Text="Button" onclientclick="ShowName('XXX')" />

这时运行项目,单击 button时,会显示"您的名称为XXX"
这就是一个简单的javascript 函数.
2、在前台通过 js文件 调用

方法与 (1)一样 只不过需要指定 .js 文件
示例如下:
复制代码 代码如下:

<head runat="server">
<script type="text/javascript" src="JScript.js">
</script>
<title>using javascript</title>
</head>

之后在body 元素间,通过事件来访问 如 要通过button1 的单击事件(onclientclick)来访问 javascript 函数
示例如下:
//此时 .js文件中必须有 ShowName 方法
<asp:Button ID="Button1" runat="server" Text="Button" onclientclick="ShowName('XXX')" />
3、在后台调用 javascript 函数,函数在.js文件中
前台的head 元素
复制代码 代码如下:

<head runat="server">
<script type="text/javascript" src="JScript.js">
</script>
<title>using javascript</title>
</head>

后台的需要添加如下代码
Button1.Attributes.Add("onclick", "showname1(XXX)");
4、在后台调用 javascript 函数,函数写在 .js文件中,但并没有在前台定义

复制代码 代码如下:

//获得.js文件
string myscript = "JScript.js";
//注册.js文件, 如果此时查看源码,会得到如下代码
//<script> src ="JScript.js" type="text/javascript"><script>
Page.ClientScript.RegisterClientScriptInclude("myKey", myscript);
//同上
Button1.Attributes.Add("onclick", "showname1(123)");

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等,要把转页代码放在脚本里面