체크박스

체크박스

QA

체크박스

본문

체크박스 계산인데요,,,

자바로 어렵게 적용했습니다. 자바 망든게 아니그,,,소스찾아서요,,ㅋ

wr_1을 분할필드로 이렇게

 

          <input type="checkbox"  id="checkboxG1" class="css-checkbox" name="ext1_00" value="3000" <? if($ext1_00 == "3000")  echo 'checked="checked"'; ?> >

          포도 (3,000원/송이)

 

 <input type="checkbox"  id="checkboxG2" class="css-checkbox" name="ext1_01" value="2000" <? if($ext1_01 == "2000")  echo 'checked="checked"'; ?> >

        사과(2,000원/개)

 

 

<td align="center"><input type="text" name="wr_2" id="sum_fruit" class='input_value'  value="<?=$write[wr_2]?>" size="15" /> 원</span></td> 

 

1.글작성시에는 체크박스의 선택값의 합계가 wr_2에 잘 나타나고 잘 저장됩니다.

그런데 수정하려고 하면 저장된 값(wr_2)에서 특정 체크박스를 해제하면 값이 바뀌어야 하는데 안되는 군요,,wr_2 input에서 무슨 처리를 해주어야 할 거 같은데..

 

어떻게 해야 하는건지..도움이 필요합니다.

 

 

 

이 질문에 댓글 쓰기 :

답변 2

<script>

$('.css-checkbox').on('click', function() {

  var sum = 0;

  $('.css-checkbox').each( function() {

    if ($(this).is(':checked')) sum += Number($(this).val()) ;

  });

  $('#sum_fruit').val(sum);

});

</script>

해당 javascript는 무엇인지도 보여주세요 

감사합니다~ 이렇게 되어 있더군요,,

 <script type="text/javascript">
var autoCalc = (function(){
  return function(){
    // 문서 로딩 확인
    if(!document.body)
      return setTimeout(arguments.callee, 100);
   
    // 폼
    var inputs = document.forms.fwrite.elements;
   
    // 항목에 이벤트 등록
    for(var input, parent, i=0, c=inputs.length; i<c; i++){
      input = inputs[i];
      if(input.type!='checkbox')
        continue;
      parent = group(input);
      if(!parent)
        continue;
      input.group = parent;
      input.onclick = checked;
      input.checked && (input.onclick());
    }
  }
 
  // 그룹 찾기
  function group(element){
    var name = false;
    do {
      element = element.parentNode;
      if(element.nodeType==1 && element.tagName=='DIV'){
        name = element.className;
        break;
      }
    }while(element);
    return name;
  }
 
  // 클릭했을 때
  function checked(){
    var value = Number(this.value);
    if(!value)
      return;
     
    value = this.checked ? value : -value;
   
    (this.sum || (this.sum = this.form.elements['sum_'+this.group])).value
      = Number(this.sum.value) + value;
    (this.sumAll || (this.sumAll = this.form.elements['sum'])).value
      = Number(this.sumAll.value) + value;
  }
})();

autoCalc();
</script>

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

회원로그인

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