zoukankan      html  css  js  c++  java
  • 解决ASP.NET页面回车回发的问题

    在asp.net页面中在文本框、按钮等服务器控件上回车都会导致页面回发,网上很多解决方案是使用JS来进行event.keyCode==13判断是否按下的回车键,如果是就event.returnValue = false;  但是这只能适用于IE,有些浏览器是不支持event.keyCode的,例如:火狐就是使用evt.which。

    这里给大家一个方案,使用后感觉还行,如果有问题请多多包涵,给出建议:

    页面代码:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
    
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server" defaultbutton="Button1">
        <div>       
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" runat="server" Text="Button" Enabled="False" style=" display:none" />       
            <br />
            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            <asp:Button ID="Button2" runat="server" Text="Button" />       
        </div>
        </form>
    </body>
    </html>

    1、先给页面的表单设置DefaultButton(这里设置的是Button1)。

      作用:回车时会以该按钮被点击来提交表单进行回发。

    2、为Button1设置Enabled="False"

      作用:回车后发现Button1不能使用,所以这次提交也就不能成功了

    3、如果不想看到这个Button1,就加上样式style=" display:none"进行隐藏

      注意:不能通过按钮的Visible来设置隐藏,因为这样隐藏回车还是会回发

  • 相关阅读:
    go学习笔记day01
    go学习笔记day02
    SQLSERVER SQL性能优化
    Javascript面向对象编程(二):构造函数的继承
    Net 下采用GET/POST/SOAP方式动态调用WebService
    Asp.Net下采用GET/POST/SOAP方式动态调用WebService
    crontab用法(例子)
    Javascript面向对象编程(三):非构造函数的继承
    学习Javascript闭包(Closure)
    js 模拟队列类
  • 原文地址:https://www.cnblogs.com/tianguook/p/3987177.html
Copyright © 2011-2022 走看看