RegisterStartupScript和RegisterClientScriptBlock

RegisterStartupScript和RegisterClientScriptBlockPage.Response.Write(“varresponse;”);    Page.RegisterStartupScript(“RegisterStartupScript”,”varRegisterStartupScript;”);    Page.RegisterClientScriptBlock(“RegisterClientScriptBlock”,”varRe

大家好,又见面了,我是你们的朋友全栈君。

Page.Response.Write(“<script>var response;</script>”);    

Page.RegisterStartupScript(“RegisterStartupScript”,”<script>var RegisterStartupScript;</script>”);    

Page.RegisterClientScriptBlock(“RegisterClientScriptBlock”,”<script>var RegisterClientScriptBlock;</script>”);   

Response.Write输出后的位置在源文件的第一行.

RegisterClientScriptBlock输出后的位置会在<form>的下一行.(在asp.net自带的脚本和一些隐藏域之下).

RegisterStartupScript输出后的位置会在</form>的上一行.

RegisterClientScriptBlock的原型与RegisterStartupScript相同,两个函数不同在于将其包含的脚本代码写入到HTML文件的不同位置.RegisterClientScriptBlock在 Page 对象的 元素的开始标记后立即发出客户端脚本,RegisterStartupScript则是在Page 对象的 元素的结束标记之前发出该脚本。如果你的脚本有与页面对象(doucument对象)进行交互的语句,则推荐使用RegisterStartupScript,反之如果要想客户端脚本尽可能早的执行,则可以使用RegisterClientScriptBlock或Response.Write。

RegisterClientScriptBlock一般返回的是客户端函数的包装,而RegisterStartupScript返回得函数在document装载完成后会执行,类似于我们平时所说的body     “f()”里面的函数;这两个方法在客户端呈现的代码位置不同,RegisterClientScriptBlock在<form     runat=server>之后,而RegisterStartupScript在</form>之前。   

补充一下相关的,这两个函数的连续使用确保在9次以内,否则写入的SCRIPT语句的顺序会不同于你预想的,因为关乎存储那些SCRIPT们的容器,当超过9个后,从LISTDICTIONARY转为HASHTABLE,大家知道一HASH了就顺序不补的了

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/162294.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • pytorch tensor操作:tensor与numpy转换

    pytorch tensor操作:tensor与numpy转换tensor转numpyt=torch.ones(5)print(f”t:{t}”)n=t.numpy()print(f”n:{n}”)输出:t:tensor([1.,1.,1.,1.,1.],dtype=torch.float64)n:[2.2.2.2.2.]cpu上的tensor可以和numpyarray共享内存地址,改变其中的一个另一个也会改变t.add_(1)print(f”t:{t}”)print(f”n:{n}”)输出:t:

    2022年10月19日
  • SQL基础编程_如何学编程

    SQL基础编程_如何学编程一.SQL的环境搭载单机与在线二.SQL的单表操作1.sql基础三步2.sql四则运算3.limit(限制查询结果个数)4.orderby(排序)5.where综合条件筛选6.SQL常量7.distinct(把结果中重复的行删除)8.函数三.SQL的多表操作1.嵌套子循环2.JOIN——连接多个数据库(或多表)3.null与内连接与外连接

  • 关于服务器安装docker后无法ping通内网

    关于服务器安装docker后无法ping通内网

  • android onresume方法,非静态方法’onResume’Android Studio

    android onresume方法,非静态方法’onResume’Android Studio我想使用WebView作为Youtube。当我尝试编译它时,出现此错误“非静态方法onResume&无法从静态上下文”引用。非静态方法’onResume’AndroidStudio我曾尝试使用rootView,但它没有工作='(publicclassvodextendsFragment{publicstaticfinalStringTAG=”vod”;@Null…

  • 检索com类工厂中的组件失败_检索com类工厂的组件失败

    检索com类工厂中的组件失败_检索com类工厂的组件失败出现以下错误:检索COM类工厂中CLSID为{000209FF-0000-0000-C000-000000000046}的组件失败,原因是出现以下错误:8000401a因为配置标识不正确,系统无法开始服务器进程。请检查用户名和密码。(异常来自HRESULT:0x8000401A)。解决方案:1.开始-dcomcnfg,启动组件服务。2.找到Micro

  • Android 程序员等级要求

    Android 程序员等级要求很多Android开发者已经度过了初级、中级,如何成为一个Android高手呢?Android123就各个级别的程序员应该掌握哪些内容作为下面分类。  一、初级  1.拥有娴熟的Java基础,理解设计模式,比如OOP语言的工厂模式要懂得。   2.掌握AndroidUI控件、AndroidJava层API相关使用。   迈向中级,最好再次更新下Ja

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号