게시판 수정 기능

게시판 수정 기능

QA

게시판 수정 기능

본문

안녕하세요 신입 개발자입니다ㅠ
제가 복잡한 난관에 봉착해서 염치불구하고 물어보게되었습니다ㅠ
데이터가 쌓이는 게시판인데 순서를 알려드리자면,  

 

1. .table_input_radio의 checkbox를 체크! 

2. #data_end의 input 에 날짜 기입. 

3. end_data button 누르면  #answer_aq 내용이 #data_end input 의 값으로 변경됨. 
(1. 에서의 check가 없을 경우 'alert 경고창' 노출 / 2. 에서의 input 안에 값이 없을 경우에도 'alert 경고창' 노출)
 


<div>
    <div class="end_data">
        <input type="text" id="data_end" name="data_single" value="" />
        <button type="button" id="select_service_end">변경</button>
    </div>
 
 
    <table>
        <tbody>
 
            <tr class="tabletr">
                <td class="table_input_radio">
                    <label><input type="checkbox" name="service_select_input" id="end_input"
                            onclick="oneCheck(this)"><em></em></label></td>
                <td>05</td>
                <td class="answer_aq">2022.03.25</td>
            </tr>
 
            <tr class="tabletr">
                <td class="table_input_radio">
                    <label><input type="checkbox" name="service_select_input" id="end_input"
                            onclick="oneCheck(this)"><em></em></label></td>
                <td>04</td>
                <td class="answer_aq">2022.03.25</td>
            </tr>
 
        </tbody>
    </table>
 
    <script>
       
        //저는 아래처럼 했으나 잘 안되네여ㅠㅠ
 
        $('#select_service_end').click(function () {
 
            var checkbox = $("input[name=service_select_input]:checked");
            var answerEnd;
            var endData = $("input[name=data_single]").val();
            // input의 value 값 가져오기
 
            if ()
 
                // 체크된 체크박스 값을 가져온다
                checkbox.each(function (i) {
 
                    // checkbox.parent() : checkbox의 부모는 <td>이다.
                    // checkbox.parent().parent() : <td>의 부모이므로 <tr>이다.
                    var tr = checkbox.parent().parent().eq(i);
                    var td = tr.children();
 
                });
 
            answerEnd = tr.find('td:eq(6)').val(endData);
 
        });
    </script>
</div>
 

 

이 질문에 댓글 쓰기 :

답변 1


<div>
    <div class="end_data">
        <input type="text" id="data_end" name="data_single" value="" />
        <button type="button" id="select_service_end">변경</button>
    </div> 
 
    <table>
        <tbody> 
            <tr class="tabletr">
                <td class="table_input_radio">
                    <label><input type="checkbox" name="service_select_input[]" class="end_input"></label></td>
                <td>05</td>
                <td class="answer_aq">2022.03.25</td>
            </tr>
 
            <tr class="tabletr">
                <td class="table_input_radio">
                    <label><input type="checkbox" name="service_select_input[]" class="end_input"><em></em></label></td>
                <td>04</td>
                <td class="answer_aq">2022.03.25</td>
            </tr>
 
        </tbody>
    </table> 
</div>
<script>
$('#select_service_end').click(function () { 
  
  if($('#data_end').val() == '') {
    alert('입력하세요'); 
    return false;
  }
   if($('.end_input').is(":checked")){
     var _this = $('.end_input:checked').parents('td').siblings('.answer_aq'); 
     _this.html($('#data_end').val());
   } else {
     alert('선택하세요');
     return false;
   }
 
});
</script>

더 좋은 방법도 있겠지만 금방 생각나는 방법은 이정도 일것 같네요.

(ID는 하나만 사용해야 합니다. end_input 을 class로 변경하였습니다)


$('#select_service_end').click(function () { //변경 버튼 클릭
        if ($('.end_input').is(":checked")) { //체크되어있으면
            var DDate = $('.end_input:checked').parents().children().eq(9); //.answer_aq 로 접근
            DDate.html($('#data_end').val()); //날짜 값으로 만료일 변경
        } else {
            alert('서비스를 선택해주세요.'); // 팝업
            return false;
        }

    });


이런식으로 수정하여 구현완료되었습니다!! 정말 감사합니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 2,662
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT