Determine Whether Caps Lock Is ON In ASP.Net Page By JavaScript

1 minute read

Here I used a simple Textbox in ASP.net page and used Javascript to determine whether Caps Lock is on or off.

I have used the following Javascript code in between head tag.

function isCapslock(e) {
 
            e = (e) ? e : window.event;
 
            var charCode = false;
 
            if (e.which) {
                charCode = e.which;
            } else if (e.keyCode) {
                charCode = e.keyCode;
            }
 
            var shifton = false;
            if (e.shiftKey) {
                shifton = e.shiftKey;
            } else if (e.modifiers) {
                shifton = !!(e.modifiers & 4);
            }
 
            if (charCode >= 97 && charCode <= 122 && shifton) {
                document.getElementById("txtCapsMsg").value = "Caps Lock is on";
                return true;
            }
 
            if (charCode >= 65 && charCode <= 90 && !shifton) {
                document.getElementById("txtCapsMsg").value = "Caps Lock is on";
                return true;
            }
 
            document.getElementById("txtCapsMsg").value = "Caps Lock is off";
            return false;
 
        }

I have also used two text box in ASP.net page. One for input and another for displaying message whether Caps Lock is on or off.

<form id="form1" runat="server">
    <div>
        <table>
            <tr>
                <td>
                    Message :
                </td>
                <td>
                    <input type="text" id="txtCapsMsg" />
                </td>
            </tr>
            <tr>
                <td>
                    Input Text :
                </td>
                <td>
                    <asp:TextBox ID="txtInputCaps" runat="server" onkeypress="isCapslock(event)"><asp:TextBox>
                </td>
            </tr>
        </table>
    </div>
    </form>

Now input some text in input textbox. Message will be showed in txtCapsMsg, textbox whether Caps Lock is on or off.