zoukankan      html  css  js  c++  java
  • c#与js客户端之间相互传值

    RegisterStartupScript(key, script)

    RegisterClientScriptBlock(key, script)

    第一个参数 key 是插入的客户端脚本的唯一标识符。
    第二个参数 script 是要插入到页面中的客户端脚本内容,包括 <script> 的起始标记和终止标记</script>。

    RegisterArraryDeclaration -- 添加javascript数组

    RegisterClientScriptBlock-- 在 form开始处(紧接 <form runat="server"> 标识之后)发送脚本块

    RegiserStartScript  -- 在</form>前添加script代码块

    RegisterStartupScript-- 在 form结尾处(在 </form> 标识之前)发送脚本块,在document装载完成后会执行,等价于body.onload=f(){}里的内容

    RegisterClientScriptInclude--添加JS文件引用

    RegisterClientScriptResource--添加外部资源文件引用

    RegisterHiddenField--在<Form>后增加隐藏表单域

    1、使用Page.ClientScript.RegisterClientScriptBlock
    RegisterClientScriptBlock方法可以把JavaScript函数放在页面的顶部。也就是说,该脚本用于在浏览器中启动页面。

    <%@ Page Language="C#" %>
    <script runat="server">
    protected void Page_Load(object sender,EventArgs e)
    {
    string myScript = @"function AlertHello() { alert('Hello ASP.NET'); }";
    Page.ClientScript.RegisterClientScriptBlock(this.GetType(),
    "MyScript",myScript,true);
    }
    </script>

    在这个例子中,把JavaScript函数AlertHello()创建为一个字符串myScript。然后使用Page. ClientScript.RegisterClientScriptBlock方法编写放在页面上的脚本。RegisterClientScriptBlock方法的两个构建方式如下:
    ● RegisterClientScriptBlock (type,key,script)
    ● RegisterClientScriptBlock (type,key,script,script tag specification)

    使用Page.ClientScript.RegisterStartupScript
    RegisterStartupScript方法与RegisterClientScriptBlock方法的区别不大。最大的区别是RegisterStartupScript把脚本放在ASP.NET页面的底部,而不是顶部。实际上,RegisterStartup Script方法甚至使用与RegisterClientScriptBlock方法相同的构造函数:
    ● RegisterStartupScript (type,key,script)
    ● RegisterStartupScript (type,key,script,script tag specification)
    那么,在页面上注册脚本的过程有什么区别?实际上区别很大!
    如果在页面上有一些处理控件的JavaScript,在大多数情况下应使用RegisterStartupScript方法,而不是RegisterClientScriptBlock方法。
    就是,查找、调用页面控件的时候,就使用 Page.ClientScript.RegisterStartupScrip

    使用Page.ClientScript.RegisterClientScriptInclude
    最后一个方法是RegisterClientScriptInclude。许多开发人员都把JavaScript放在.js文件中,这是最好的方式,因为很容易把对JavaScript的修改应用于整个应用程序。使用RegisterClientScriptInclude方法可以在ASP.NET页面上注册脚本文件,如下所示。
    string myScript = "myJavaScriptCode.js"
    Page.ClientScript.RegisterClientScriptInclude("myKey",myScript);

    方法一  调用js的函数 

           this.Page.ClientScript.RegisterStartupScript(this.GetType(), "js", "creatbooktable('" + a + "');", true); 

    方法二 利用隐藏的input控件

     <input id="Text1" type="hidden" runat="server" />

    方法三 直接在js中引用变量

    var count = "<%=a%>";
  • 相关阅读:
    有return的情况下try_catch_finally的执行顺序
    java异常处理之try_catch_finally
    乔布简历
    策略模式--经典详细分析
    观察者模式(Observer Pattern)(二):HeadFirst中的气象站的实现
    luogu2444 [POI2000]病毒
    bzoj3172 luogu3966 [TJOI2013]单词
    luogu3808 luogu3796 AC自动机(简单版) AC自动机(加强版)
    vijos1459 车展
    poj2985 The k-th Largest Group
  • 原文地址:https://www.cnblogs.com/yanglc/p/4683455.html
Copyright © 2011-2022 走看看