escape() Method
문자셋을 아스키(ASCII) 값으로 반환해주는 자바스크립트 내장함수입니다.
이 함수는 쉼표와 세미콜론 같은 문자가 쿠키문자열과의 충돌을 피하기 위해 사용됩니다.
그리고 url을 인코딩 할때도 쓰이죠.
이렇게 16진수 문자열로 변환된 문자열은 unescape() 함수로 다시 되돌려줄 수 있습니다
unescape() Method
escape()와 반대로 아스키 값을 문자셋으로 반환 자바스크립트 내장함수입니다.
isFinite() Method
괄호안의 값이 유한수인지 무한수인지를 구별해주는 자바스크립트 내장 함수
유한수이면 true, 무한수이면 false를 보여줍니다.
isNaN() Method
is Not a Number라는 뜻으로 괄호안의 입력값이 문자인지 숫자인지를 구별해주는
자바스크립트 내장 함수입니다.
문자이면 true, 숫자이면 false를 보여준다.
[출처] 자바스크립트 내장 함수 (escape, unescape, isFinite, isNaN)|작성자 깜스
자바스크립트]공통함수
[출처] [자바스크립트]공통함수|작성자 잠공주
var ter = isNaN(document.form01.ltt.value);
를
var ter = document.form01.ltt.value.replace( /[0-9]+/g, "" ).length == document.form01.ltt.value.length;
이렇게 바꿔보세요
1. ltt 의 값에서 숫자를 모두 지우고
2. 원래의 ltt 값의 문자길이와 숫자를 지운 ltt값의 문자길이를 비교하여 숫자가 포함되었는지 여부 알아냅니다.
///////////////////////////////////////////////////////////////////////////
추가 질문에 대한 답변
function lett(){
// 정규표현식 [^0-9] 와 [0-9] 를 이용
// [^0-9] 는 0 ~ 9 가 아닌 문자
// match 메서드는 주어진 정규표현식에 해당 하는 문자를 찾아줍니다.
// 즉, 아래 코드는 0~9 가 아닌문자 를 찾아봤는데 "== null" 암것도 없더라..
// 결국 모두 숫자일경우 isNumber 는 true 가 됩니다.
var isNumber = document.form01.ltt.value.match( /[^0-9]+/g ) == null;
// 아래 코드는 0 ~ 9 까지의 숫자를 찾아봤는데 "!= null" 아무것도 없지 않더라..
// 즉, 모두 숫자인지 아닌지는 몰라도 숫자가 있더라가 됩니다.
// 결국 숫자가 포함되었다면 isMixed 는 true 가 됩니다.
var isMixed = document.form01.ltt.value.match( /[0-9]+/g ) != null;
if( isNumber ){ // 위에서 찾은 모두 숫자냐?
alert( "문자를 입력하세요" );
document.form01.ltt.value = "";
}else if( isMixed ){ // 모두 숫자도 아니라면 특정 문자에 숫자도 있느냐?
alert( "문자만 입력하세요" );
document.form01.ltt.value = "";
}else{ // 모두 숫자도 아니고 특정문자에 숫자가 있지도 않으니 이것은 문자다
top.content.form03.ler.value = document.form01.ltt.value;
}
}
주석을 달긴했는데.. 만족할만한 답변이 되었는지...^^;
http://kin.naver.com/detail/detail.php?d1id=1&dir_id=10105&eid=LefC5DzUUd+kjxw9MJDs39jO7WtpSJle&qb=7J6Q67CU7Iqk7YGs66a97Yq4IGlzTnVtYmVyKCk=&enc=utf8&pid=fjhvrdoi5UdsstFQyzNsss--002649&sid=SaXs2cbNpUkAAHAtd7o