다음 html 페이지가 있습니다.jquery : 다른 필드 세트에서 다음 입력을 선택하십시오.
<form action="editProfile" id="userInformation">
<fieldset id="birthdate">
<label><input type="text" id="day" maxlength="2"/>/<input type="text" id="month" maxlength="2"/>/<input type="text" id="year" maxlength="2"/>
</fieldset>
<fieldset>
<label>Name</label><input type="text" id="name"/>
</fieldset>
</div>
이제 항상 다음 입력 필드로 이동하고 싶습니다. 나는 시도했다 :
$("#birthdate input[type=text]").keyup(function(e){
if($(this).val().length == $(this).attr('maxlength')){
$(this).next(":input").focus();
}
});
하지만 그 fieldset 이내에 머물 것으로 보인다. 그리고 nextall은 작동하지 않거나 잘못 사용하고 있습니다.
편집 : 지금까지의 내 솔루션 :
if($(this).val().length == $(this).attr('maxlength')){
if($(this).parent().children().last().attr('id') == $(this).attr("id")){
$(this).parent().next().find(':input').focus();
}else{
$(this).next("input").focus();
}
}
이전에이 문제를 발견하지 못했습니다. 흥미로운 질문 (및 ** + 1 **) =) –
관심없는가요, 왜 keydown 처리기 안에 keydown 처리기를 할당합니까? – Jamiec
하나를 간과했습니다. – jack