Chcę wprowadzić tylko wartości znakowe wewnątrz <textarea>
i wartości numeryczne w innym. Udało mi się utworzyć funkcję JavaScript, która pozwala tylko na wprowadzanie wartości numerycznych w <textarea>
przy użyciu onkeypress
. Działa to w przeglądarkach Firefox i Chrome.Javascript Funkcja wprowadzania tylko liter alfabetu
W przypadku alfabetów tworzę inną funkcję JavaScript z użyciem właściwości windows.event
. Jedynym problemem jest to, że działa tylko w Chrome, a nie w Firefoksie.
Chciałbym wiedzieć, jak zezwolić na wprowadzanie tylko alfabetów przy użyciu zdarzenia onkeypress
, które jest używane do wprowadzania tylko wartości numerycznych?
function isNumberKey(evt){ <!--Function to accept only numeric values-->
//var e = evt || window.event;
\t var charCode = (evt.which) ? evt.which : evt.keyCode
if (charCode != 46 && charCode > 31
\t && (charCode < 48 || charCode > 57))
return false;
return true;
\t }
\t \t
function ValidateAlpha(evt)
{
var keyCode = (evt.which) ? evt.which : evt.keyCode
if ((keyCode < 65 || keyCode > 90) && (keyCode < 97 || keyCode > 123) && keyCode != 32)
return false;
return true;
}
<label for="cname" class="label">The Risk Cluster Name</label>
<textarea id="cname" rows="1px" cols="20px" style="resize:none" placeholder="Cluster Name" onKeyPress="return ValidateAlpha(event);"></textarea>
<br>
<label for="cnum">Risk Cluster Number:</label>
<textarea id="cmun" rows="1px" cols="12px" style="resize:none" placeholder="Cluster Number" onkeypress="return isNumberKey(event)"></textarea>
_ "tylko wartości znaku" _ - Czy masz na myśli tylko litery? Pamiętaj, że sprawdzanie przy naciśnięciu klawisza nie jest wystarczające, ponieważ użytkownik może kopiować/wklejać lub przeciągać i upuszczać bez powodowania zdarzenia keypress. – nnnnnn
zamiast tego użyj wyrażeń regularnych? – Nanda
Oto kilka przykładów znaków: "1", "&", "a", ")", "W". Masz na myśli _letters._ – nnnnnn