• Asp.net 后台调用js方法


    1. 用Response.Write方法

      代码如下:

     Response.Write("<script type='text/javascript'>alert("XXX");</script>");

      此方只能调用内部函数,具体调用自定义的函数只能在Response.Write写上函数定 义,比如

    Response.Write("<script type='text/javascript'>function myfun(){}</script>");

    2.ClientScript.RegisterStartupScript方法

      代码如下:在想调用某个javascript脚本函数的地方添加代码,
    (1)在脚本文件中定义MyFun()。

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

    (2)直接在ClientScript.RegisterStartupScript里面写

    ClientScript.RegisterStartupScript(this.GetType(), "", "<script type='text/javascript'>function MyFun(){}</script>");

    第一个参数: 指当前页面;
    第二个参数:脚本函数的名字,随便起;
    第三个参数: 指脚本内容。
    这个方法比Response.Write更方便一些,可以直接调用脚本文件中的自定义函数。

    3.ScriptManager.RegisterStartupScript方法

    如果页面中不用Ajax,cs中运行某段js代码方式可以是: Page.ClientScript.RegisterStartupScript(Page.GetType(), "", "<script>window.open('default2.aspx')</script>");

    如果页面中使用了Ajax ,则上述代码即使执行也无效果。

    对这种情况我们通常采用: ScriptManager.RegisterStartupScript(this.Button1, this.GetType(), "alertScript", "window.open('default2.aspx');", true);
    ScriptManager.RegisterStartupScript(this, this.GetType(), "", "<script>CheckMobile();</script>", false);

    其中第一个参数为要注册脚本的控件ID,试了一下,只要是本页面的就行。

    第二个参数为注册脚本控件类型,是控件还是this的GetType()都可以,typeOf(string)也没问题.

    第三个脚本函数的名字,随便起。

    第四个是脚本内容。

    第五个是标明是否再添加脚本标签,如果第四个参数里包含了标签,此处则为false,否则为true。

    4.普通的添加控件的Attributes属性

      对于普通按钮就是:Button1.Attributes.Add(“onclick”,”MyFun();”);

      只能在Onload中或类似于onload的初始化过程中添加才有效。而且是先执行脚本函数,无法改变执行顺序。


    原文链接:https://blog.csdn.net/GrandShaw/article/details/53258792

  • 相关阅读:
    Eclipse EE 3.6 failed to create the java virtual machine 解决
    [收藏]家用三线插座(220V单相)正确接线方法
    Java设计模式 Design Pattern:包装模式 Decorator Pattern
    MIME 类型列表
    面试题参考
    循环队列的运用求K阶斐波那契序列
    加密技术仿射密码
    面试题集锦_1
    栈的运用(5)转换逆波兰式
    栈的运用(6)逆波兰式求值
  • 原文地址:https://www.cnblogs.com/lizongyan/p/14469666.html
Copyright © 2020-2023  润新知