zoukankan      html  css  js  c++  java
  • ASP.NET调用javascript脚本的方法总结

      ASP.NET本身就提供了多种调用javascript脚本的方法,本文总结了六种调用方法,大家根据自己的使用习惯可以选择相应的调用方式了!

    1、直接在前台调用 javascript 函数

    很简单,在 head 元素之间加入 script 元素,将 type 元素设置为 " text/javascript "

    如:

    <head runat="server">
    <script type="text/javascript" >
    function ShowName(str)
    {
    alert("您的名字为:("+str+")");
    }
    </script>
        <title>using javascript</title>
    </head>


    之后在body 元素间,通过事件来访问 如 要通过button1 的单击事件(onclientclick)来访问 javascript 函数

    示例如下:

    <asp:Button ID="Button1" runat="server" Text="Button"  onclientclick="ShowName('XXX')"  />

    这时运行项目,单击 button时,会显示"您的名称为XXX"

    这就是一个简单的javascript 函数.

    2、在前台通过 js文件 调用

    方法与 (1)一样 只不过需要指定 .js 文件

    示例如下:

    <head runat="server">
    <script type="text/javascript" src="JScript.js">
    </script>
        <title>using javascript</title>
    </head>

    之后在body 元素间,通过事件来访问 如 要通过button1 的单击事件(onclientclick)来访问 javascript 函数

    示例如下:

    //此时 .js文件中必须有 ShowName 方法

    <asp:Button ID="Button1" runat="server" Text="Button"  onclientclick="ShowName('XXX')"  />

    3、在后台调用 javascript 函数,函数在.js文件中

    前台的head 元素

    <head runat="server">
    <script type="text/javascript" src="JScript.js">
    </script>
        <title>using javascript</title>
    </head>

    后台的需要添加如下代码

    Button1.Attributes.Add("onclick", "showname1(XXX)");

    4、在后台调用 javascript 函数,函数写在 .js文件中,但并没有在前台定义

    //获得.js文件

    string myscript = "JScript.js";

    //注册.js文件, 如果此时查看源码,会得到如下代码

    //<script> src ="JScript.js" type="text/javascript"><script>

    Page.ClientScript.RegisterClientScriptInclude("myKey", myscript);

    //同上
    Button1.Attributes.Add("onclick", "showname1(123)");

    5. 用Response.Write方法写入脚本

    比如在你单击按钮后,先操作数据库,完了后显示已经完成,可以在最后想调用的地方写上
    Response.Write("<script type='text/javascript'>alert();</script>");

    这个方法有个缺陷就是不能调用脚本文件中的自定义的函数,只能调用内部函数,具体调用自定义的函数只能在Response.Write写上函数定 义,比如Response.Write("<script type='text/javascript'>function myfun(){...}</script>");

    6.用ClientScript类动态添加脚本

        用法如下:在想调用某个javascript脚本函数的地方添加代码,注意要保证MyFun已经在脚本文件中定义过了。

        ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript", "<script>MyFun();</script>");

    这个方法比Response.Write更方便一些,可以直接调用脚本文件中的自定义函数。

    注意,以上所有方法中,后台代码都不能有转化当前页的代码,比如Redirect等,要把转页代码放在脚本里面

  • 相关阅读:
    【转】从源码分析Handler的postDelayed为什么可以延时?
    android系统中如何通过程序打开某个AccessibilityService
    【转】在子线程中new Handler报错--Can't create handler inside thread that has not called Looper.prepare()
    【转】Android 增,删,改,查 通讯录中的联系人
    【转】Android调用Sqlite数据库时自动生成db-journal文件的原因
    【转】Android辅助功能AccessibilityService自动全选择文字粘贴模拟输入
    【转】Android中保持Service的存活
    Multi-label && Multi-label classification
    第2章 排序 || 第17节 三色排序练习题
    第2章 排序 || 第15节 有序数组合并练习题
  • 原文地址:https://www.cnblogs.com/top5/p/1625058.html
Copyright © 2011-2022 走看看