2026, 새로운 도약을 시작합니다.

코드 좀 줄여주십시오 채택완료

7년 전 조회 3,373

$(document).on("click", function() {
    $("#deposit1").change( function() {
    jQuery('#deposit_date1').val('<?=G5_TIME_YMD?>');
    });
    
    $("#deposit2").change( function() {
    jQuery('#deposit_date2').val('<?=G5_TIME_YMD?>');
    });
    
    $("#deposit3").change( function() {
    jQuery('#deposit_date3').val('<?=G5_TIME_YMD?>');
    });
    
    $("#deposit4").change( function() {
    jQuery('#deposit_date4').val('<?=G5_TIME_YMD?>');
    });
    
    $("#deposit5").change( function() {
    jQuery('#deposit_date5').val('<?=G5_TIME_YMD?>');
    });
    
});

이런식으로 30개 해야 하는데 하나하나 나열하기 너무 무식한거 같아요,,

답변 3개

채택된 답변
+20 포인트

jQuery('[id^=deposit]').change(function() { ... });

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

이렇게 간단한걸 몇십개 늘렷으니...
감사합니다~ 잘됩니다.

댓글을 작성하려면 로그인이 필요합니다.

name값은 신경쓰지마시고

블랙캣님의 말씀처럼

인풋 태그안에 class="deposit" 이라고 넣으시면 자동으로 this를 받아오면서 될것같은데요?

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

해당 인풋에 deposit 라는 클래스를 주이소

$(".deposit").change( function() {
    jQuery(this).val('<?=G5_TIME_YMD?>');
    });

이렇게 해보세요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

천재셈.
감사합니다만,,,

a 인풋(#deposit1~~30까지 가구요) b인풋(#deposit_date1~~30까지)

a인풋에 금액 기재하면 자동으로 b인풋에 날짜가 기재되게 하려는 겁니다.

그런데 a인풋과 b인풋은 추가버튼 누르면 동적추가로 인풋이 추가되는 것입니다.

<?=$deposit[$i]?> <?=$deposit_date[$i]?>이렇게 되어 있습니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고