채택완료

고수님들, 자바스크립트 계산인데, 알려주실수 있을까요? ㅠ

2021-03-10 (수) 17:06:23 5,404

안녕하세요

http://xn--w80by1ax26alkcb1d.com/sub_estimate.php

위 url에서 작업중인데요

제가 하고싶은건

class=auto_calc 가 붙은 selectbox 에서

onchange가 되면, value 값을 받아서

맨 아래에 tot_amount 라는 input 에 onchange 할때마다 나오는 value 를 합산하는 겁니다.

일단.. onchange 할때, tot_amount 에 넣는것까지는 됐는데

onchange 때마다 합산을 하려면 .. 어떻게 해야하나요?

머리가 돌이 된듯한 느낌... ㅠ

위 url 소스 보셔도 되겠지만.

간단하게 그 부분만 아래에 적어봅니다. (주황색 코드..부분)

    <script>
        $(function(){
            // bind change event to select
            $('.auto_calc').on('change', function () {
                var num = $(this).val(); // get selected value
                if (num) {
                    var f = document.auto_form;
                    var anum=num.split(',');

                    var rprice = parseInt(anum[0]); // 판매갸
                    var cprice = parseInt(anum[1]); // 소비자가


                    var result = eval(rprice); // onchange value 를 받을때마다, 합산을...?


                    f.tot_amount.value = result;
                    //alert(f.tot_amount.value);
                }
                return false;
            });
        });
    </script>

고수분들의 도움을 청해봅니다. ;; ㅠ

|

답변 2개 / 댓글 2개

채택된 답변
+20 포인트
2021-03-10 (수) 17:11:29

 <script>
         var sum = 0;
        $(function(){
            // bind change event to select
            $('.auto_calc').on('change', function () {
                var num = $(this).val(); // get selected value
                if (num) {
                    var f = document.auto_form;
                    var anum=num.split(',');

                    var rprice = parseInt(anum[0]); // 판매갸
                    var cprice = parseInt(anum[1]); // 소비자가


                    var result = eval(rprice); // onchange value 를 받을때마다, 합산을...?
                    
                    sum = sum + result;


                    //f.tot_amount.value = result;
                    f.tot_amount.value = sum;
                    //alert(f.tot_amount.value);
                }
                return false;
            });
        });
    </script>

답변에 대한 댓글 1개

2021-03-10 (수) 17:14:42
맞네요.. ㅠ
감사합니다!~!~~
2021-03-10 (수) 17:09:43

 f.tot_amount.value += result;

답변에 대한 댓글 1개

2021-03-10 (수) 17:12:09
이건..저도 했는데
해보니.. 100 + 200 해서 300이 안나오고

100200 이게 나오더라구요

이것땜에.. 위에 parseInt ,를 햇는데.. 그래도 안먹어서.. ㅠ

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