`
aijuans
  • 浏览: 1565457 次
社区版块
存档分类
最新评论

为Textbox控件注册回车事件及回车事件中触发按钮提交事件

 
阅读更多

引子:

在ASP.Net页面中textbox的index为1(或n),其后的提交按钮index为2(n+1),光标在textbox中,回车后自动焦点移动到后面的button上,会触发button的点击事件。

但在Lyncplus客户端中访问Web页面时遇到了TextBox控件回车自动完成按钮的提交事件失效的情况(应该是自动切换焦点)。

      由于并且该服务端TextBox控件没有提供OnKeyPress或OnKeyDown等事件,也无法针对回车事件写后台代码来调用Button按钮的点击事件。

      于是上网查找相关的介绍,最终解决了以下两个问题:

(一)、实现在TextBox控件回车事件中 执行JS代码,来控制页面元素的值。

(二)、实现在TextBox控件回车事件中 调用服务端控件的点击事件,来执行服务端C#代码,实现相关的功能。

具体实现如下:

一、注册和触发服务端TextBox控件回车事件 

1.PageLoad事件代码:

 

    protected void Page_Load(object sender, EventArgs e)
    {
        MessageTxt.Attributes.Add("onkeypress", "EnterTextBox()"); 
        MessageTxt.Attributes.Add("onkeydown", "EnterTextBox()"); 
    }    

2.javascript代码:

  <script language="javascript">
    function EnterTextBox() {
      if (event.keyCode == 13 && document.all["MessageTxt"].value != "") //按下了回车,并且文本框里有值
          {
          $("#<%=hidKeywords.ClientID%>").val($("#<%=MessageTxt.ClientID%>").val().replace(/[^\u0000-\u00FF]/g,
              function ($0) {
                return escape($0).replace(/(%u)(\w{4})/gi, "&#x$2;")
              }));
          }
      } 
  </script>

 

二、TextBox控件回车事件中调用服务端Button控件点击事件

1.PageLoad事件代码: 同上。

    protected void Page_Load(object sender, EventArgs e)
    {
        MessageTxt.Attributes.Add("onkeypress", "EnterTextBox()"); 
        MessageTxt.Attributes.Add("onkeydown", "EnterTextBox()"); 
    }    

2.javascript代码:   注意使用原始的dom对象获取按钮,使用Jquery获取不到。

  <script language="javascript">
    function EnterTextBox() {
      var button = document.getElementById('<%=btnSearch.ClientID%>');//获取服务端控件对应的页面对象
      if (event.keyCode == 13) //按下了回车
          {
          button.click();
                event.returnValue = false;
          }
      }    </script>

 

分享到:
评论

相关推荐

    Textbox控件注册回车事件及触发按钮提交事件具体实现

    但在Lyncplus客户端中访问Web页面时遇到了TextBox控件回车自动完成按钮的提交事件失效的情况(应该是自动切换焦点)。 由于并且该服务端TextBox控件没有提供OnKeyPress或OnKeyDown等事件,也无法针对回车事件写后台...

    Asp.net的TextBox回车触发事件

    ### Asp.net中的TextBox回车触发事件 在Asp.net开发中,经常需要处理用户在文本框(`TextBox`)内的输入操作,特别是在用户按下回车键时触发某些特定的操作,比如提交表单或者执行搜索功能等。本文将详细介绍如何在...

    textbox 回车执行事件

    默认情况下,TextBox控件的回车键可能不会触发任何服务器端事件,因为浏览器通常会将回车键视为表单的提交按钮。为了在回车键被按下时执行服务器端代码,我们需要进行一些额外的配置。 1. **添加服务器端事件**:在...

    textbox绑定回车

    当用户在TextBox中按下回车键时,通常希望触发特定的事件,比如提交表单或者执行某个操作。本篇将详细介绍如何在ASP.NET中绑定TextBox的回车事件,并使用C#语言处理相关逻辑。 首先,我们需要在网页的.aspx文件中...

    C#实现回车光标自动跳到下一个控件的几种方法

    // 找到下一个TextBox控件 Control nextControl = FindNextControl(textBox1, true, true, false, true); if (nextControl != null && nextControl is TextBox) { // 转移焦点 nextControl.Focus(); } } }...

    asp.net 文本框回车事件

    在ASP.NET中,默认情况下,当用户在一个文本框中按下回车键时,如果页面上存在按钮,则会触发页面上第一个按钮的点击事件。这种行为有时并不符合我们的需求,例如: - 我们可能希望在用户完成某个特定文本框的输入后...

    延迟了TextChanged事件的TextBox文本框控件C#源代码

    为了解决这个问题,我们可以实现一个延迟触发TextChanged事件的TextBox控件。 在标题和描述中提到的"延迟了TextChanged事件的TextBox文本框控件"是指一种优化策略,它不会在每次用户输入时立即触发事件,而是等待...

    自制控件:C#中TextBox控件只允许输入数字

    ### 自制控件:C#中TextBox控件只允许输入数字 #### 背景介绍 在软件开发过程中,为了确保用户输入的数据符合预期格式,经常需要对输入进行限制。例如,在财务应用或数学计算程序中,我们可能希望某个文本框(`...

    C#winform控件textbox按键输入控制.rar

    TextBox控件提供了多种功能,如文本显示、文本编辑以及处理用户输入事件。本教程将深入讲解如何在TextBox控件中实现按键输入控制,以满足特定的业务需求。 首先,我们需要了解TextBox控件的基本属性和事件。TextBox...

    C#TextBox控件的输入控制

    在C# WinForm应用开发中,TextBox控件是不可或缺的一部分,它用于接收用户输入的数据。在实际项目中,我们往往需要对TextBox控件的输入内容进行一定的控制,以确保数据的有效性和安全性。以下是对"C# TextBox控件的...

    vb做超精简计算器 只需一个textbox控件

    通过以上分析可以看出,利用VB中的Textbox控件及其KeyPress事件,我们能够构建一个功能完善的超精简计算器。这种做法不仅简洁高效,还展示了VB在快速原型设计方面的能力。对于初学者而言,这是一个很好的实践项目,...

    asp.net页面回车触发button按钮方案

    ### ASP.NET 页面回车触发 Button 按钮方案详解 #### 一、概述 在 Web 开发中,尤其是在 ASP.NET 应用程序中,我们经常需要处理用户输入数据时的操作,比如通过按下 Enter 键来触发某个操作或提交表单。这种需求在...

    VB 按下键盘时触发的KeyPress事件

    `KeyPress`事件通常在控件(如TextBox或Form)中使用,当用户按下键盘上的一个键并释放时,该事件就会被触发。事件处理程序通常命名为`KeyPress`,如`Private Sub Form_KeyPress(KeyAscii As Integer)`。这里的`Key...

    asp.net中绑定TextBox回车事件的解决方法

    在ASP.NET开发中,有时我们需要实现当用户在TextBox控件中按下回车键时触发特定的事件,而不是默认的表单提交。以下是如何在ASP.NET中绑定TextBox的回车事件的详细步骤和方法: 1. **JavaScript处理回车事件**: ...

    c# TextBox控件

    TextBox控件有许多内置事件,例如`TextChanged`事件在文本内容改变时触发,`KeyDown`和`KeyUp`事件响应键盘按键操作,`LostFocus`和`GotFocus`事件则在控件失去或获得焦点时触发。通过这些事件,开发者可以实现复杂...

    在各种条件下触发Enter事件.NET(C#)

    这里,`TextBox1`是服务器端控件的名称,`EnterTextBox`是我们之前定义的JavaScript函数名,`Button1`是我们希望在按下Enter键时触发点击事件的按钮的ID。 2. **处理按钮点击事件**:在C#中,我们需要编写一个处理...

    .net,js捕捉文本框回车键事件的小例子(兼容多浏览器).docx

    在网页开发中,捕获用户在文本框(TextBox)中按下回车键的事件是非常常见的需求,这通常用于实现表单提交或者执行特定的操作。在不同的浏览器中,处理这种事件的方式可能会有所不同。本文将详细解释如何使用...

    回车变成Tab的解决方案

    IE会将页面上的第一个按钮自动设为默认按钮。当用户在页面上按回车键时,就会触发这个默认...换句话说,如果在Panel中设置了默认按钮,那么在Panel内的文本框中按回车仍然会触发默认按钮,而不会变成按Tab键的效果。

    C# 在窗体中按回车键依次变换控件焦点

    实现这个功能的核心在于监听窗体的键盘事件,特别是回车键(Keycode为13)被按下时的事件。下面将详细解释实现步骤: 1. **创建窗体和控件**:首先,你需要创建一个窗体,并在其中添加若干控件,如TextBox、Button...

Global site tag (gtag.js) - Google Analytics