• ASP.NET服务端添加客户端事件


    ASP.NET服务器控件可以发送两种客户端脚本:
    1、客户端脚本块:客户端脚本块通常是用JavaScript编写的,其中通常包含在发生特定的客户端事件时执行的函数。
       发送脚本块的方法是使用System.Web.UI.Page类包含的两个方法可以将客户端代码发送到由ASP.NET Web页面提供的HTML中:
       (1)、RegisterStartupScript(key,script):在Web窗体的结尾处(在</form> 标记之前)发送脚本块。
       (2)、RegisterClientScriptBlock(key,script):在Web窗体的开始处(紧接着<form runat="server">标识之后)发送脚本块。
     

    //判断是否已经注册了,在大量使用时有用
            if (!Page.ClientScript.IsClientScriptBlockRegistered("Common"))
            {
                Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Common", "<script>alert('1')</script>");
            }
            if (!Page.ClientScript.IsClientScriptBlockRegistered("Common1"))
            {
                Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "Common1", "<script>alert('2')</script>");
            }

    2、客户端HTML属性:客户端HTML属性提供将客户端事件与客户端脚本联系在一起的方法。
       这种方法只适用于从System.Web.UI.WebControls.WebControl类导出的服务器控件,因为从这个类导出的控件会发送某些HTML元素。
       WebControl类包含一个将HTML元素属性添加到由Web控件发出的HTML元素的方法,该方法称为AddAttributesToRender(),它只有一个输入参数,即HtmlTextWriter的实例。

    string script = "return confirm('真的要删除吗?');";
            this.Button1.Attributes.Add("onclick", script);
    
            if ((!Page.ClientScript.IsStartupScriptRegistered("PopUp") && (!Page.IsPostBack)))
            {
                string scriptBlock = "<script language='JavaScript'>alert('发送客户端脚本!');</script>";
                Page.ClientScript.RegisterStartupScript(typeof(Page), "PopUp", scriptBlock);
            }


     

  • 相关阅读:
    详解ASP.NET的内置对象
    如何架设FTP服务器
    输出JSON问题
    new , virtual , override
    Javascript 操作select控件大全(新增、修改、删除、选中、清空、判断存在等)
    Java回顾之I/O
    数据结构之栈和队列
    Java回顾之多线程同步
    设计模式之行为型模式
    Java回顾之网络通信
  • 原文地址:https://www.cnblogs.com/yzj1212/p/2573232.html
Copyright © 2020-2023  润新知