·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> Asp.net 中,在服务端向客户端写脚本的常用方法

Asp.net 中,在服务端向客户端写脚本的常用方法

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

asp.net 中,在服务端向客户端写脚本的常用方法

在Asp.net 服务端处理脚本,一般都用 ClientScriptManager ,即web窗体服务端的this.ClientScript。该对象比较常用的方法:

1、RegisterArrayDeclaration:在服务端,向客户端生成一个数组定义

服务端代码:this.ClientScript.RegisterArrayDeclaration("aAry", "1,2,3");

客户端“源文件”呈现

<script type="text/javascript"><!--var aAry = new Array(1,2,3);// --></script>

2、RegisterClientScriptBlock:向客户端写一个脚本块,这种方式,不会自动在前后加上 <script type="text/Javascript">和</script>

服务端代码:this.ClientScript.RegisterClientScriptBlock(this.GetType(), "sblk", "var aa=1;");

客户端“源文件”呈现:var aa=1;

3、RegisterClientScriptInclude:在客户端写一个<script type="text/javascript" src=...></script>

服务端代码:this.ClientScript.RegisterClientScriptInclude("js", "http://www.baidu.com/test.js");

客户端“源文件”呈现:<script src="http://www.baidu.com/test.js" type="text/javascript"></script>

4、RegisterExpandoAttribute:本方法最少三个参数,即客户端控件id、属性名、属性值,在客户端生成一个为控件属性赋值的语句

服务端代码:this.ClientScript.RegisterExpandoAttribute("form1", "formtype", "form");

客户端“源文件”呈现:

<script type="text/javascript"><!--var form1 = document.all ? document.all["form1"] : document.getElementById("form1");form1.formtype = "form";// --></script>

5、RegisterHiddenField:自动在客户端生成一个<input type="hidden"...

服务端代码:this.ClientScript.RegisterHiddenField("hiddenField", "i'm ahidden");

客户端“源文件”呈现:

<input type="hidden" name="hiddenField" id="hiddenField" value="i'm ahidden" />

6、RegisterOnSubmitStatement:在客户端form的onsubmit事件中,自动添加指定的代码

服务端代码:

this.ClientScript.RegisterOnSubmitStatement(this.GetType(), "onsubmit1", "var onsubmit11=1;");this.ClientScript.RegisterOnSubmitStatement(this.GetType(), "onsubmit2", "var onsubmit22=2;");客户端“源文件”呈现:首先为form指定事件处理程序,如:<form id=... onsubmit="javascript:return WebForm_Submit();"

其次不论在服务端使用几次RegisterOnSubmitStatement语句,均生成一个javascript function,并将每个RegisterOnSubmitStatement方法中的客户端脚本连接作为该事件处理程序的语句:

<script type="text/javascript"><!--function WebForm_OnSubmit() {var onsubmit11=1;var onsubmit22=2;return true;}// --></script>

7、RegisterStartupScript:将制定的脚本代码放到</form>前,并且,该方法发送到客户端的代码前后不会自动添加<script> 和</script>

服务端代码:this.ClientScript.RegisterStartupScript(this.GetType(), "testStartup", "var jjj=2");

客户端“源文件”呈现:var jjj=2

如多次使用,则在客户端也是顺序连接