2014-03-26 2 views
1

Jquery가 아닌 순수한 자바 스크립트를 사용하여 다음 텍스트 영역의 유효성을 검사하려면 어떻게해야합니까? 누구든지 제발 도와 줄 수 있어요.자바 스크립트 유효성 검사가 포함 된 텍스트 영역

<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> 
+2

당신을 했 귀하의 필요에 대한 Google 정규 표현식? –

+1

포인트 2에 대한 제안입니다. 경고를 말하면 실제 경고 상자를 사용하지 마십시오. – Smeegs

+1

왜 jQuery를 사용하지 않으시겠습니까? –

답변

0

이 정규식에만 유효 문자열과 일치합니다 : + 대신 *의

/^[\w,-]*$/ 

사용하면 빈 문자열을 허용하지 않는 경우. tenub에 의해 지적, \w_ 수 있습니다, 그래서에 정규식을 수정 :

document.querySelector('.input').onkeypress = function validate(e) { 
    if (String.fromCharCode(e.keyCode).match(/[\w,-]/) == null) { 
     alert('not allowed'); 
     e.preventDefault(); 
    } 
}; 

DEMO

편집 :

+2

'\ w'는 "_"을 허용합니다. – tenub

+0

아 맞아. 문자 클래스 빼기가 지원되면'/^[- \ w, - [_]] * $ /', 그렇지 않으면'/^[a-zA-Z0-9, -] * $ /'. (가독성을 위해 어쨌든 마지막 것을 사용하십시오.) –

관련 문제