onclick 함수 여러개 등록시..
본문
<a onClick="option1();option2();" href="#">
<script>
function option1(){
if($('input[name=wr_12]').is(':checked')==false){
alert('옵션을 선택하세요');
$('html, body').animate({
scrollTop: "+="+$('input[name=wr_12]').offset().top
}, 800);
//if문이 걸리면 여기까지만 작동 option2함수로 넘어가지 않도록!
}
}
function option2(){
if($('input[name=wr_13]').is(':checked')==false){
alert('옵션을 선택하세요');
$('html, body').animate({
scrollTop: "+="+$('input[name=wr_13]').offset().top
}, 800);
}
}
</script>
위와같이 한개의 a태그 버튼을 만들어 onclick이벤트를 2개 이상 주었는데
예를 들어 첫번째 이벤트 option1이 alert값에 걸리면 option2가 실행되지 않도록 할 수 있나요?
답변 2
<a onClick="option1();" href="#">
<script>
function option2(){
if($('input[name=wr_13]').is(':checked')==false){
alert('옵션을 선택하세요');
$('html, body').animate({
scrollTop: "+="+$('input[name=wr_13]').offset().top
}, 800);
}
}
function option1(){
if($('input[name=wr_12]').is(':checked')==false){
alert('옵션을 선택하세요');
$('html, body').animate({
scrollTop: "+="+$('input[name=wr_12]').offset().top
}, 800);
} else {
option2();
}
}
</script>
함수를 하나로 합치고 작동해야 하는 라인 밑에 return false; 를 추가하세요.
문법상 허용되고, 여러개의 함수를 사용할 수 있어도 해당 방법의 코딩은 유지보수 및 가독성 등 여러가지 이유로 자주 사용하지 않습니다