채택완료

스크립트 계산 질문드립니다.

아래 스크립트에서 a+b+c 이부분을 어떻게 해야 할지요?

아래 계산되는 3개를 각각 %로 그래프화 하려합니다.

<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.3.js"></script> 

<script type="text/javascript"> 
 $(document).ready(function () {
   $('#a').keyup(function () {
      $('#ae').val(this.value * 4);
   var value = (this.value*4)/a+b+c*100;
       $('#ae').css('width', value);
   });

    $('#b').keyup(function () {
      $('#be').val(this.value * 4);
   var value = (this.value*4)/a+b+c*100;
       $('#be').css('width', value);
   });

    $('#c').keyup(function () {
      $('#ce').val(this.value * 9);
   var value = (this.value*9)/a+b+c*100;
       $('#ce').css('width', value);
   });

});
 </script> 

<input name="my1" id="a" >
<input name="my2" id="b" >
<input name="my3" id="c" >

<input id='ae' style="border:none; background-color:#64a5ce;" /><input id='be' style="border:none; background-color:#89c064;" /><input id='ce' style="border:none; background-color:#fe5e5e;"/>

|

답변 2개 / 댓글 1개

채택된 답변
+20 포인트

아래코드 a+b+c 에 괄호를 치세요 >>> ( (this.value*4)/(a+b+c) ) * 100

<script type="text/javascript"> 
 $(document).ready(function () {
   $('#a').keyup(function () {
      $('#ae').val(this.value * 4);
   var value = ( (this.value*4)/(a+b+c) ) * 100;
       $('#ae').css('width', value);
   });

    $('#b').keyup(function () {
      $('#be').val(this.value * 4);
   var value = ( (this.value*4)/(a+b+c) ) * 100;
       $('#be').css('width', value);
   });

    $('#c').keyup(function () {
      $('#ce').val(this.value * 9);
   var value = ( (this.value*9)/(a+b+c) ) * 100;
       $('#ce').css('width', value);
   });

});
 </script> 

() 괄호로 묶으셔야 하며 수치(숫자) 일경우에는 parseInt로 각각 감싸셔야 합쳐집니다.

예를들어 

a = parseInt(100);

b = parseInt(200);

c = parseInt(60); 

일경우 일반적으로 + 할경우 값은 10020060 으로 나올겁니다.

(a + b + c) = 360 이 나오지요..

현재 정확하게 어떤 오류가 나시는것인지요??

제가글을 제대로 이해를 못하는것인건지...아님 그래프를 짜달라 하시는것인지 모르겠네요

답변에 대한 댓글 1개

a에는 $('#ae').val(this.value * 4); 를
b에는 $('#be').val(this.value * 4); 를
c에는 $('#ce').val(this.value * 4); 를 대입하고자합니다.

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