您的位置:首页 > Web前端 > JavaScript

如何在后台CS代码文件中调用前台JS文件中的某一个函数

2010-04-24 10:40 946 查看
my test code:

-->

private void load()
{

ClientScript.RegisterStartupScript(this.GetType(), "Shift", "<script type='text/javascript'>GetXmlValues('" + XMLName.Shift + "','ctl00_ContentPlaceHolder1_dropShift','Shift','SHIFT');</script>");
}

其中:GetXmlValues是源中前台javascript函数, ctl00_ContentPlaceHolder1_dropShift 是.NET Control DropDownList (dropShif)的完整名称, 加MasterPage都会在Id前面加入类似"ctl00_ContentPlaceHolder1_"的前缀.无论多少层,都只加一个.

public void RegisterStartupScript(Type type, string key, string script)

参数
type
类型:System.Type

要注册的启动脚本的类型。

key
类型:System.String

要注册的启动脚本的键。

script
类型:System.String

要注册的启动脚本文本。

<--

//保存为 test.js 文件
function a1() {
alert("a1");
}

function a2() {
alert("a2");
}

//test.aspx 页面
<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
protected void BtnTest_Click(object sender, EventArgs e)
{
//执行js文件里面的a1()函数
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "a1", "a1();", true);
//this.BtnTest.Attributes.Add("onclick", "a1();"); 这种也可以
//编译后,查看源文件 会发现他们的区别
Response.Write("执行");
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>

//导入刚才的js文件
<script src="test.js" type="text/javascript"></script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="BtnTest" runat="server" Text="Click Me" onclick="BtnTest_Click" />
</div>
</form>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐