DataTable selectBox value값 변경

DataTable selectBox value값 변경

QA

DataTable selectBox value값 변경

본문


{ data: 'wr_4',
                render : function(data,type,row){
                    var options = ['미정산', '정산대기', '정산완료'];
                    var select = '<select id="wr_4" name="wr_4" onchange= changeFn() value="">';
                    for(var j = 0; j < options.length; j++){
                         var selected = (data === options[j]) ? 'selected' : '' ;
                    select += '<option ' + selected + ' >' + options[j] + '</option>';
                }                    
                    select += '</select>';
                    return select;
                }
            },

다른 data들은 표기도 잘 되고 변경도 잘 됩니다. 근데 문제는 이 쿼리인데 리스트에 데이터가 많은데 저 selectbox의 value가 변하지않고 1번의 선택된 value로 계속 갑니다ㅠㅠ 1번데이터에 체크된 value는 변경이 가능한데 다른것들은 1번데이터에 체크된 value로만 표기됩니다.. 어떻게 수정을 해야할까요??

EX) 1번데이터 selectBox value = '미정산' 이면 그 밑에있는 데이터들의 selectbox value도 1번데이터 따라 미정산으로 정해집니다..

이 질문에 댓글 쓰기 :

답변 2

{ data: 'wr_4',
    render : function(data,type,row){
        var options = ['미정산', '정산대기', '정산완료'];
        var select = '<select id="wr_4" name="wr_4" onchange="changeFn()">';
        for(var j = 0; j < options.length; j++){
            var selected = (data === options[j]) ? 'selected' : '' ;
            select += '<option value="' + options[j] + '" ' + selected + ' >' + options[j] + '</option>';
        }                    
        select += '</select>';
        return select;
    }
},

 

보통 onchange 할 경우 함수로 사용하지만 그저 changeFn(this.value) 하시면 알아서 선택된 value 값을 가져오기 때문에 함수 내에서 따로 value 값을 정의 내릴필요없을텐데요..

 


{
   data: 'wr_4',
   render: function(data, type, row) {
      var options = ['미정산', '정산대기', '정산완료'];
      var select = '<select id="wr_4-' + row + '" name="wr_4" onchange="changeFn()" value="">';
      for (var j = 0; j < options.length; j++) {
         var selected = (data === options[j]) ? 'selected' : '';
         select += '<option ' + selected + ' >' + options[j] + '</option>';
      }
      select += '</select>';
      return select;
   }
}

 

이렇게 해보시겟나요?

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

회원로그인

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