zoukankan      html  css  js  c++  java
  • Response.Write 、RegisterClientScriptBlock和RegisterStartupScript总结

     

    Response.Write 、RegisterClientScriptBlock和RegisterStartupScript总结


     

    Page.ClientScript.RegisterStartupScript用法小结

     
    使用类型、键、脚本文本和指示是否添加脚本标记的布尔值向 Page 对象注册启动脚本。
    参数
    type
    要注册的启动脚本的类型。
    key
    要注册的启动脚本的键。
    script
    要注册的启动脚本文本。
    addScriptTags
    指示是否添加脚本标记的布尔值.
    备注:
    启动脚本由它的键和类型唯一标识。具有相同的键和类型的脚本被视为重复脚本。只有使用给定的类型和键对的脚本才能使用该页面进行注册。试图注册一个已经注册的脚本不会创建重复的脚本。
     
     //ASP.NET后台页面跳转 
    Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>if(confirm('保存成功!是否继续添加?')){location.href='ProductonAdd.aspx'}else{location.href='ProductonList.aspx'}</script>");
     
    //后台弹出确定框
    ClientScript.RegisterStartupScript(GetType(), "message", "<script>alert('请正确输入!');</script>");
     
    //ASP.NET后台页面跳转
    Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>alert('数据添加成功!');{location.href='ProductonList.aspx'}</script>");
    Page.ClientScript.RegisterStartupScript(typeof(string), "", "<script>window.location.href='AdminMain.aspx';</script>");
     
    //后台弹出文本框
    ScriptManager.RegisterStartupScript(Page, typeof(string), "popUp", "window.open('rptView.aspx','打印预览','toolbar=no,location=no,scrollbars=yes,top=200px,left=200px,width=904px,height=650px')", true);
     

     

    ClientScript.RegisterStartupScript使用说明

     
    ClientScript.RegisterStartupScript用来向前台页面注册script脚本,有两种重载方法,分别为ClientScript.RegisterStartupScript(Type type,string key ,string script);ClientScript.RegisterStartupScript(Type type,string key, string script,bool flag);
    前者要加“<script></script>”.
    而后者可以直接写成ClientScript.RegisterStartupScript(Type.GetType(),"",jsScript名称,true);这样在前台注册的时候可以自动加上<script></script>,
    其中还有一个比较重要的一项是key,如果key设置的相同的话,就会第一个覆盖下面的jsScript代码,而失去效应,所以在用的时候要把key设置不同。
    如这样
    string JavaScript = @" <script  language  =  javascript> alert('测试1'); </script> "; 
    ClientScript.RegisterStartupScript(this.GetType(), "javaScript", javaScript); 
     
    string javaScript2 = @" <script  language  =  javascript> alert('测试2'); </script> "; 
    ClientScript.RegisterStartupScript(this.GetType(), "javaScript2", javaScript2);
     

     

    Response.Write 、RegisterClientScriptBlock和RegisterStartupScript的区别:

     
    1. Response.Write
    这种方法会把js代码写在页面的最顶部(<html>的前面):
    1. RegisterStartupScript.
    这种方法会把JS代码嵌入在页面的底部、表单的最后 (</form>前面),适用于要在页面控件加载完成后运行的JS代码 :
    1. RegisterClientScriptBlock
    这种方法会把JS代码嵌入在页面的顶部、表单的最前 (<form>后面),适用于要在控件加载前执行的JS代码
     
    如果你的脚本有与页面对象(doucument对象)进行交互的语句,则推荐使用RegisterStartupScript,反之如果要想客户端脚本尽可能早的执行,则可以使用RegisterClientScriptBlock和Response.Write。
  • 相关阅读:
    树链剖分学习笔记(未完)
    VI 配置文件(略全)
    linux之awk
    指针之基础篇
    linux之sed
    sqlplus命令手册
    Leetcode复习: 堆和栈
    leetcode 的shell部分4道题整理
    Regular Expression Matching [leetcode]
    深入浅出JAVA
  • 原文地址:https://www.cnblogs.com/mslalan/p/7470301.html
Copyright © 2011-2022 走看看