我正在使用ASP.net C#开发的登录页面出现问题.
该表单适用于IE,但不适用于Firefox.
这是我的样本:
该表单适用于IE,但不适用于Firefox.
这是我的样本:
<%@ Page Language="c#" Inherits="ClubCard.loginClubcard" CodeFile="loginClubcard.aspx.cs" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <html> <head> <title> Acceso Clubcard </title> <Meta http-equiv="Page-Enter" content="blendTrans(Duration=0.25)" /> <Meta http-equiv="Page-Exit" content="blendTrans(Duration=0.25)" /> <link rel="stylesheet" type="text/css" href="styles.css"> <style> #centered { LEFT: 50%; MARGIN-LEFT: -235px; POSITION: absolute; TOP: 150px } .letras { FONT-SIZE: 10pt; COLOR: white; FONT-FAMILY: Arial } .cajas { FONT-SIZE: 10pt; FONT-FAMILY: Arial } .letrasGris A { FONT-SIZE: 12px; COLOR: #8f8f92; FONT-FAMILY: Arial; TEXT-DECORATION: none } .highlightit IMG { FILTER: progid:DXImageTransform.Microsoft.Alpha(opacity=100); -moz-opacity: 1 } .highlightit:hover IMG { FILTER: progid:DXImageTransform.Microsoft.Alpha(opacity=50); -moz-opacity: 0.5 } </style> <script language="javascript"> function actLogin() { __doPostBack('btnLogin',''); } function actFocus() { tbxPrincipal = document.getElementById("tbxUsername").focus(); } function ValidarEnter(src) { if (event.keyCode == "13") { actLogin(); } } function AbrirLogin() { if (window.frameElement != null) { window.parent.location.replace(window.location.href); } } </script> <Meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1"> <Meta name="CODE_LANGUAGE" content="C#"> <Meta name="vs_defaultClientScript" content="JavaScript"> <Meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"> </head> <body bgcolor="#ffffff" leftmargin="0" topmargin="0" onload="AbrirLogin();actFocus()"> <form id="Form1" method="post" runat="server" target="_top"> <table id="Table_01" width="100%" height="100%" border="0" cellpadding="0" cellspacing="0"> <tr> <td style="background: url(images/login/loginBg.gif) repeat-x"> </td> </tr> </table> <div id="centered"> <div style="left: 50%; margin-left: -100px; position: absolute"> <div> <img src="images/login/logoClubCard.gif"> </div> </div> <div style="margin-left: 100px; width: 200px; position: absolute; top: 240px"> <table width="100%" cellpadding="0" cellspacing="2" border="0"> <tr> <td align="right" class="letras"> USUARIO: </td> <td> <asp:TextBox runat="server" CssClass="cajas" ID="tbxUsername"> </asp:TextBox> </td> <td rowspan="3"> <a class="highlightit" href="javascript:actLogin()" tabindex="3"> <img border="0" src="images/login/botonLogin.gif"> </a> </td> </tr> <tr> <td align="right" class="letras"> CLAVE: </td> <td> <asp:TextBox runat="server" CssClass="cajas" ID="tbxPassword" TextMode="Password" OnKeyPress="ValidarEnter(this)" OnTextChanged="tbxPassword_TextChanged"> </asp:TextBox> </td> </tr> </table> </div> <div style="margin-top: 54px"> <img src="images/login/cajaAzul.gif"> </div> <div style="display: inline; float: left;width:50% " align="center"> <asp:requiredFieldValidator ID="rfvUsername" runat="server" CssClass="tA" ErrorMessage="* Escriba su USUARIO" ControlToValidate="tbxUsername"> </asp:requiredFieldValidator> <br> <asp:requiredFieldValidator ID="rfvPassword" runat="server" CssClass="tA" ErrorMessage="* Escriba su CLAVE" ControlToValidate="tbxPassword"> </asp:requiredFieldValidator> <br> <table > <tr align="center"> <td> <asp:Label runat="server" ID="lblError" Visible="False"> <font color="red" class="tA"> <b> El USUARIO y CLAVE no coincidieron,trate de nuevo </b> </font> </asp:Label> </td> </tr> </table> </div> </div> <div style="display: none"> <input type="button" runat="server" id="btnLogin" value="login" onserverclick="btnLogin_ServerClick"> </div> </form> </body> </html>
我注意到这部分……
function ValidarEnter(src) { if (event.keyCode == "13") { actLogin(); } }
当我在firefox上调试它时,它只是跳过它.
我已经尝试添加window.event.keyCode …并且还只用13开关“13”…
我怎么能在这周围工作?
解决方法
Firefox不支持event.keycode.使用event.which for firefox.
function checkKey(evt) { var keyID = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode); alert(keyID); }