zoukankan      html  css  js  c++  java
  • 在TextBox中敲击回车执行ASP.NET后台事件

     

    1.在TextBox中敲击回车执行ASP.NET后台事件

     

    0.说明

    页面中有一个用于搜索的TextBox,希望能在输入内容后直接回车开始搜索,而不是手动去点击它旁边的搜索按钮
    但因为该TextBox和搜索按钮不在一个Form里面(直接敲击回车是另外一个按钮响应)
    所以就在网上找了一种利用jQuery绑定回车键, __doPostBack的方法

    1.Code

    Page标签
    <%@PageLanguage="C#"AutoEventWireup="true"CodeFile="OrderManagement.aspx.cs"Inherits="OrderManagement"EnableEventValidation="false" %>
     
    TextBox与搜索按钮
    <asp:TextBoxID="TextSearch"runat="server"CssClass="col-lg-3 textbox"></asp:TextBox>
    <asp:LinkButtonID="LinkButtonSearch"runat="server"CssClass="btn btn-default wolegeqv"OnClick="LinkButtonSearch_Click"><iclass="fa fa-search"></i></asp:LinkButton>
     
    jQuery
    $('#TextSearch').bind('keypress',function(event){
    if(event.keyCode =="13")
    {
    __doPostBack('LinkButtonSearch');
    returnfalse;
    }
    });
     
    由于我一开始在页面顶部 Page中设置了 EnableEventValidation="false" 所以上面的代码能较好的运行
    若设置位true,敲击回车页面无响应,若打开Chrome的控制台可以看到后台报了个Error
    但是后来我在MSDN上看到官方强烈建议将此选项设置为True,又恰巧在StackOverflow上看到了另外一种写法可以在启用EnableEventValidation的情况下运行
     
    jQuery 
    __doPostBack('<%= MYBUTTONID.UniqueID %>','');
    $('#TextSearch').bind('keypress',function(event){
    if(event.keyCode =="13")
    {
    __doPostBack('<%=LinkButtonSearch.UniqueID %>','');
    returnfalse;
    }
    });
     

     

  • 相关阅读:
    Intellij IDEA +genymotion安装配置
    openssl编译参数选项
    shell脚本中sqlite3命令查询数据库失败返回空,并将错误信息打印到标准错误输出
    linux 系统中 /etc/passwd 和 /etc/shadow文件详解
    linux crypt()函数使用总结
    linux popen()函数使用
    AES加解密所遇问题
    linux 修改密码命令
    linux新增动态库后可执行程序找不到的问题
    inet_addr()和inet_ntoa()使用注意
  • 原文地址:https://www.cnblogs.com/moonache/p/5268728.html
Copyright © 2011-2022 走看看