사용자가 무언가를 입력했는지 테스트하는이 작은 jQuery 코드를 직접 만들려고합니다. 그렇지 않은 경우 오류를 경고합니다. 그러나 작은 문제가있는 것 같습니다 $(this)
.이 경우 키워드 가 제대로 작동하지 않는 것 같습니다. 도와주세요!
HTML :
<input type="text" id="name" name="name" />
<div id="error-div-1"></div>
<input type="text" id="hobbies" name="hobbies" />
<div id="error-div-2"></div>
자바 스크립트 :
function showError(i) {
var errorDivID = "#error-div-" + i;
if ($(this).val() === "") {
$(errorDivID).html("Please enter something!");
} else {
$(errorDivID).html("");
}
}
$("#name").on("blur", function() {
showError(1);
});
$("#hobbies").on("blur", function() {
showError(2);
})
this
당신이 참조가 showError()
를 의미 window
객체; 함수가 이벤트 핸들러 범위가 아닌 전역 범위에 있기 때문입니다.
아래와 같은 함수에 전달합니다.
function showError(i, element) {
var errorDivID = "#error-div-" + i;
if ($(element).val() === "") {
$(errorDivID).html("Please enter something!");
} else {
$(errorDivID).html("");
}
}
$("#name").on("blur", function () {
showError(1, this);
});
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다