답변을 찾을 수 없습니다. 그래서
은 간단한 양식 요소가 ..이 중복되지 희망 :<label>Email Address:</label>
<input type="text" onblur="validateEmail(this)" />
그리고이 입력 값 (및 onblur)이 유효한지 여부를 확인하는 유효성 검사 스크립트를 실행하고 있습니다. 위대한 작품!
지금은 스크립트를 보편적으로 유지하려고합니다. 따라서 클래스 이름이나 ID를 사용하여 작동시키지 않아도됩니다.
값이 이메일 주소가 아닌 경우이 입력란에서 작업을 수행하는 방법을 알고 싶습니다. 특히, 레이블의 색상을 변경하고 필드 자체에 빨간색 테두리를 넣고 싶습니다.
var inputTextTest = field.value;
var filter = /^((\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*?)\s*;?\s*)+/;
if (filter.test(inputTextTest)) {
var name = field;
$(this).focus();
$(this).css("border","1px");
$(this).css("border-color","red");
} else {
$(this).css("border", "none");
}
나는 $ (이) 내 전화가 작동하지 않는 것을 볼 수 있습니다
다음은 작동하지 않는 스크립트입니다. 그렇다면이 특정 분야에 대한 조치를 취하고 스크립트를 완전히 보편적으로 유지하는 방법 (즉, 특정 클래스 또는 ID 이름에 의존하지 않음)도움을 받으려면 미리 감사드립니다. 그것은 일반적인 난 당신이 기존의 검증 라이브러리 중 하나를 사용하는 게 좋을 것 있도록하기 위해
obtrusive javascript를 사용해야합니까? – eomeroff
'this '를 사용하면 대상 요소의 이름이 있는지 여부와 관계가 없습니다. 이벤트 처리기를 연결할 수 있도록 이름/ID/클래스 또는 요소 유형 만 선택에 사용할 수 있습니다. 이벤트 처리기 내에서 'this'는 대상 요소를 참조합니다. 선택기가 정확하고 적절한 이벤트가 발생했을 때 핸들러가 실행되면 선택기 **가 ** 작업을 완료해야합니다. 'this'는 핸들러가 부착 될 수있는 선택기가 아닌 것을 고려합니다. 어쩌면 그것은 나이지만 질문은 의미가 없습니다. 또한, 질문의 제목과 텍스트가 일치하지 않는 것 같습니다. –