在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 a hidden");

客户端“源文件”呈现:

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

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

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

Asp.net 中,在服务端向客户端写脚本的常用方法的更多相关文章

  1. Asp.Net_ 服务端向客户端写JavaScript脚本

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

  2. TCP中的服务端与客户端的实现

    TCP中首先要在服务端开启监听,这样才可以从客户端链接 using System; using System.Collections.Generic; using System.Linq; using ...

  3. WCF心跳判断服务端及客户端是否掉线并实现重连接

    WCF心跳判断服务端及客户端是否掉线并实现重连接 本篇文章将通过一个实例实现对WCF中针对服务端以及客户端是否掉线进行判断:若掉线时服务器或客户端又在线时将实现自动重连:将通过WCF的双工知识以及相应 ...

  4. asp.net获取服务端和客户端信息

    asp.net获取服务端和客户端信息 获取服务器名:Page.Server.ManchineName获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostNam ...

  5. 常量,字段,构造方法 调试 ms 源代码 一个C#二维码图片识别的Demo 近期ASP.NET问题汇总及对应的解决办法 c# chart控件柱状图,改变柱子宽度 使用C#创建Windows服务 C#服务端判断客户端socket是否已断开的方法 线程 线程池 Task .NET 单元测试的利剑——模拟框架Moq

    常量,字段,构造方法   常量 1.什么是常量 ​ 常量是值从不变化的符号,在编译之前值就必须确定.编译后,常量值会保存到程序集元数据中.所以,常量必须是编译器识别的基元类型的常量,如:Boolean ...

  6. 解决有关flask-socketio中服务端和客户端回调函数callback参数的问题(全网最全)

    由于工作当中需要用的flask_socketio,所以自己学习了一下如何使用,查阅了有关文档,当看到回调函数callback的时候,发现文档里都描述的不太清楚,最后终于琢磨出来了,分享给有需要的朋友 ...

  7. app开发中如何利用sessionId来实现服务端与客户端保持回话

    app开发中如何利用sessionId来实现服务端与客户端保持回话 这个问题太过于常见,也过于简单,以至于大部分开发者根本没有关注过这个问题,我根据和我沟通的开发者中,总结出来常用的方法有以下几种: ...

  8. seata服务端和客户端配置(使用nacos进行注册发现,使用mysql进行数据持久化),以及过程中可能会出现的问题与解决方案

    seata服务端和客户端配置(使用nacos进行注册发现,使用mysql进行数据持久化),以及过程中可能会出现的问题与解决方案 说明: 之所以只用nacos进行了注册与发现,因为seata使用naco ...

  9. 基于SignalR的服务端和客户端通讯处理

    SignalR是一个.NET Core/.NET Framework的实时通讯的框架,一般应用在ASP.NET上,当然也可以应用在Winform上实现服务端和客户端的消息通讯,本篇随笔主要基于Sign ...

随机推荐

  1. HDU 2107 Founding of HDU

    http://acm.hdu.edu.cn/showproblem.php?pid=2107 Problem Description 经过慎重的考虑,XHD,8600, LL,Linle以及RPG等A ...

  2. python 安装pymssql

    error: command 'gcc' failed with exit status 1 ---------------------------------------- Command &quo ...

  3. 时空KSOA之CS表单工具说明

    CS表单工具说明 1.调用: 1.1.单据事件调用 runbill_表单sn 调用无窗口表单 loadbill_表单sn 调用窗口表单 1.2.功能调用 功能号:LOADCSBILL 参数表单名称 1 ...

  4. Springboot 和 Mybatis集成开发

    Springboot 和 Mybatis集成开发 本项目使用的环境: 开发工具:Intellij IDEA 2017.1.3 jdk:1.7.0_79 maven:3.3.9 额外功能 PageHel ...

  5. 一个不错的微信应用JS API库

    1.API能实现什么? 1.分享到微信朋友圈 2.分享给微信好友 3.分享到腾讯微博 4.新的分享接口,包含朋友圈.好友.微博的分享(for iOS) 5.隐藏/显示右上角的菜单入口 6.隐藏/显示底 ...

  6. nowcoder 202F-平衡二叉树

    题目链接 题目描述 平衡二叉树,顾名思义就是一棵“平衡”的二叉树.在这道题中,“平衡”的定义为,对于树中任意一个节点,都满足左右子树的高度差不超过 d. 空树的高度定义为0,单个节点的高度为1,其他情 ...

  7. HashMap的put方法返回值问题

    API文档中的描述: 先看一个例子 Map<Character, Integer> map = new HashMap<Character, Integer>(); Syste ...

  8. TFS(Team Foundation Server) 权限设置记录

    环境: TFS2012 + win7 1.安装好TFS 2.创建系统用户组: TFSAdmins.TFSDevs.TFSUsers 分别为TFS管理人员组.TFS开发人员组.TFS普通用户组. 如下图 ...

  9. 51nod乘积之和

    题目链接 戳我 题意简述 你有长为\(n\)的序列和\(Q\)个询问,每次询问一个\(k\),求用\(k\)个数组成的不同方案的乘积的和. sol 显然要预处理一波. 考虑分治,左右两边都求出来后,怎 ...

  10. 【专题】字符串专题小结(AC自动机 + 后缀自动机)

    AC自动机相关: $fail$树: $fail$树上以最长$border$关系形成父子关系,我们定一个节点对应的串为根到该节点的路径. 对于任意一个非根节点$x$,定$y = fa_{x}$,那$y$ ...