Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript event.keyCode在Firefox中不工作_Javascript_Asp.net_Events_Login_Keycode - Fatal编程技术网

Javascript event.keyCode在Firefox中不工作

Javascript event.keyCode在Firefox中不工作,javascript,asp.net,events,login,keycode,Javascript,Asp.net,Events,Login,Keycode,我在ASP.net C#上开发的登录页有问题。 该表单可以在IE上使用,但不能在Firefox上使用。 这是我的样本: <%@ Page Language="c#" Inherits="ClubCard.loginClubcard" CodeFile="loginClubcard.aspx.cs" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <html> <

我在ASP.net C#上开发的登录页有问题。 该表单可以在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">
                        &nbsp;
                    </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">
                                &nbsp;&nbsp;
                                <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>
当我在firefox上调试它时,它只是跳过它。 我已经尝试添加
window.event.keyCode
。。。也可以用13来切换“13”。。。
我如何解决这个问题?

Firefox不支持event.keycode。在firefox中使用event.which

function checkKey(evt) {
  var keyID = (evt.charCode) ? evt.charCode : ((evt.which) ? evt.which : evt.keyCode);
  alert(keyID);
}

当我在做一个项目时,我遇到了同样的问题。我做了一些
RND
并找出了这两件事

  • e.keyCode
    onkeydown()
    功能配合良好,无论浏览器是Chrome还是Firefox
  • 以下是ChromeFirefox的良好实践

    // HTML (Note onkeydown() function here)
    <input id="anyId" onkeydown="return myFunction(event)" type="text" />
    
    // JavaScript for it
    function myFunction(e) {
        var asciiValue = e.keyCode ;
        alert ("ASCII Value: " + asciiValue );   // ASCII of pressed key
        if(asciiValue >0){
           return true;
        }
        else{
           return false;
        }
    }
    

    对不起,它不起作用。。。它实际上停止了对IE=(仍然没有成功…我感谢你的帮助…对IE的帮助…虽然我在调用该方法时指定了这一点…checkKey(这)在文本框中…是否正确?不,按control键绑定
    <input type="text" onkeypress="return key_fir(event);" name="name" id="login_email">
    
    function key_fir(e)
        {
            e = e || window.event || {};
              var charCode = e.charCode || e.keyCode || e.which;
                  if (charCode == 13) {                
    
                       //write your code here Like  $("#log_sub").click();
                  }
        }
    
    // HTML (Note onkeydown() function here)
    <input id="anyId" onkeydown="return myFunction(event)" type="text" />
    
    // JavaScript for it
    function myFunction(e) {
        var asciiValue = e.keyCode ;
        alert ("ASCII Value: " + asciiValue );   // ASCII of pressed key
        if(asciiValue >0){
           return true;
        }
        else{
           return false;
        }
    }
    
    // HTML (Note onkeypress() function here)
    <input id="anyId" onkeypress="return myFunction(event)" type="text" />
    
    // JavaScript for it
    function myFunction(e) {
        var asciiValue = e.keyCode || e.charCode ;   // It'll handle both Chrome & Firefox
        alert ("Ascii Value: " + asciiValue);    // ASCII of pressed key
        if(asciiValue>0){
           return true;
        }
        else{
           return false;
        }
    }