如何使用纯Javascript而非Jquery验证以下textarea?任何人都可以帮助我。
<script>
function val()
{
// 1. only allowed alphanumeric characters, dash(-), comma(,) and no space
// 2. alert if person is trying to input not allowed chars as in 1.
}
</script>
<form>
<textarea name="pt_text" rows="8" cols="8" class="input" onkeydown="return val();"></textarea>
</form>
答案 0 :(得分:1)
尝试类似:
document.querySelector('.input').onkeypress = function validate(e) {
if (String.fromCharCode(e.keyCode).match(/[\w,-]/) == null) {
alert('not allowed');
e.preventDefault();
}
};
修改:正如tenub指出,\w
也允许_
,因此请将正则表达式修改为:/[A-Za-z0-9,-]/
答案 1 :(得分:0)
此正则表达式仅匹配有效字符串:
/^[\w,-]*$/
如果不允许使用空字符串,请使用+而不是*。