2012-10-31 2 views
0
$.validator.addMethod('username', function (value) { 
    return [A-Za-z0-9\-\_]+.test(value); 
}, 'Username can only contain letters, numbers, underscores and dashes.'); 

정규 표현식 또는 jQuery/JavaScript가 좋지 않아서 거의 불가능합니다.jQuery 유효성 검사 메소드 (RegEx)

숫자, 문자, 밑줄 및 대시 (공백, 마침표 없음 등) 만 있는지 확인하기 위해 사용자 이름을 확인하는 방법을 추가하기 만하면되지만 올바르게 만들 수는 없습니다.

도움을 주시면 감사하겠습니다. 여기에 두 가지 문제가 있습니다

return (value.match(/^[A-Za-z0-9-_]+$/)); 
+0

javascript 정규식 리터럴은'/.../ '로 묶어야합니다. – jbabey

답변

2

:

+0

대단히 감사합니다! – Lanezeri

0

당신은 당신의 코드를 변경하고 싶습니다. 첫째, 정규 표현식에는 구분 기호가 필요합니다. 두, 정규식은 전체 문자열이 그 편지들로 구성되어 있는지 여부를 확인하지 않습니다 : 나는 또한 약간 (문자 클래스가 동일) 정규식을 단축

var regex = /^[\w-]+$/; 
return regex.test(value); 

.