• js 回车调用后台事件


     

    最近在项目开发做了一个小功能,回车调用后台事件,现在拿出来跟大家分享一下:
    前台代码:

        <script type="text/javascript">
    //为TextBox指定回车时执行的Button按钮事件
    function enterPressExecuteButtonAction(textBoxID, buttonID) {
    if (event.keyCode == 13) {
    //获取按钮事件
    var func = document.getElementById(buttonID).click;
    document.getElementById(buttonID).focus();
    func();//调用事件
    event.returnValue = false;
    }
    }
    //为TextBox屏蔽回车事件
    function EnterEventsAction() {
    if (event.keyCode == 13) {
    event.keyCode = 0;
    event.returnValue = false;
    }
    }

    </script>

            <asp:TextBox ID="TextBox1" runat="server" onload="TextBox1_Load" ></asp:TextBox>
            <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button"  />
    后台代码:

            //按钮事件
    protected void Button1_Click(object sender, EventArgs e)
    {
    Response.Write("ni hao 123");
    }
    //加载事件
    protected void TextBox1_Load(object sender, EventArgs e)
    {//调用了TextBox扩展方法
    TextBox1.RegisterPressEnterAction(this.Button1,ButtonType.Button);
    }

    还有一个TextBox扩展方法类

     public static class TextBoxExtension
    {
    /// <summary>
    /// 为TextBox指定回车时执行的按钮事件
    /// </summary>
    public static void RegisterPressEnterAction(this TextBox textBox, WebControl button, ButtonType buttonType)
    {
    switch (buttonType)
    {
    case ButtonType.Button:
    textBox.Attributes.Add("onkeypress", String.Format("enterPressExecuteButtonAction(this.id,'{0}');", button.ClientID));
    break;
    case ButtonType.Image:
    break;
    case ButtonType.Link:
    textBox.Attributes.Add("onkeypress", String.Format("enterPressExecuteLinkButtonAction(this.id,'{0}');", button.ClientID));
    break;
    default:
    break;
    }
    textBox.Attributes.Add("onfocus", "javascript:this.select();");
    }
    public static void RegisterPressEnterAction(this TextBox textBox, string button, string buttonType)
    {
    switch (buttonType)
    {
    case "Button":
    textBox.Attributes.Add("onkeypress", String.Format("enterPressExecuteButtonAction(this.id,'{0}');", button));
    break;
    case "Image":
    break;
    case "Link":
    textBox.Attributes.Add("onkeypress", String.Format("enterPressExecuteLinkButtonAction(this.id,'{0}');", button));
    break;
    default:
    break;
    }
    textBox.Attributes.Add("onfocus", "javascript:this.select();");
    }
    /// <summary>
    /// 为TextBox指定回车时执行的按钮事件
    /// </summary>
    public static void RegisterPressEnterAction(this TextBox textBox)
    {
    textBox.Attributes.Add("onkeypress", "EnterEventsAction();");
    textBox.Attributes.Add("onfocus", "javascript:this.select();");
    }
    }
    联盟快卖 商人,生意人,待创业人士在此可以共赢互利 期待你的加入 群号:140809277
  • 相关阅读:
    微信小程序传参 查询数据库,显示在小程序上
    jquery 的$.ajax() 与php后台交互
    Laravel 7 中文文档
    phpStudy配置
    Mysql 聚合函数 嵌套使用
    MySQL 的IFNULL()、ISNULL()和NULLIF()函数
    MySQL 定义变量,并且可以当value 值插入
    排序算法之冒泡排序
    排序算法之快速排序
    链表之反转链表
  • 原文地址:https://www.cnblogs.com/yexinw/p/2128512.html
Copyright © 2020-2023  润新知