sabato 3 dicembre 2016

Asp.Net impostare la lunghezza della textbox in javascript per tutti i browser

Il seguente script illustra una tecnica di come limitare l'inserimento dei carattere in un controllo textbox, tramite Javascript, per qualsiasi browser, anche per le versione di IE 9 e precedenti.


  function VerificaTextAreaMaxLength(textBox, e, length) {
            var mLen = textBox["MaxLength"];
            if (null == mLen)
                mLen = length;
            var maxLength = parseInt(mLen);
            if (!checkSpecialiCaratteri(e)) {
                if (textBox.value.length > maxLength - 1) {
                    if (window.event)//IE
                        e.returnValue = false;
                    else//Firefox
                        e.preventDefault();
                }
            }
        }
        function checkSpecialiCaratteri(e) {
            if (e.keyCode != 8 && e.keyCode != 46 && e.keyCode != 37 && e.keyCode != 38 && e.keyCode != 39 && e.keyCode != 40)
                return false;
            else
                return true;
        }

Nel controllo Textbox impostare nell'evento onkeyDown, la funzione precedente, passando come parametri, il textbox tramite il "this", l'oggetto event e la lunghezza.
Qui di seguito un esempio per richiamare la funzione Javascript per limitare l'uso dei caratteri.

asp:TextBox ID="txtCognomeReclamante" runat="server" Columns="80" MaxLength="50" onkeyDown="VerificaTextAreaMaxLength(this,event,'50');"
                                                            ReadOnly="true"



/asp:TextBox




Nessun commento: