테스트 사이트 - 개발 중인 베타 버전입니다

가격에 쉼표 제거 후 자동계산 채택완료

RAEAN 2년 전 조회 2,566

value 값의 금액에 쉼표가 없으면 자동계산은 잘 됩니다.

하지만 value값에 백단위 심표를 넣게 되면 계산이 안되는데요..

 

계산시 쉼표를 제거 후 자동계산 할 수 있는 방법이 있나요..?

 

</p>

<p><input type="checkbox" name="wr_1" id="wr_1" value="10,000" onClick="sel_option()">

<input type="checkbox" name="wr_2" id="wr_2" value="200,000" onClick="sel_option()">

<input type="checkbox" name="wr_3" id="wr_3" value="33,000" onClick="sel_option()"></p>

<p>총금액 : <input name="wr_5" required value="wr_5" type="text" readonly></p>

<p>

<script>

function sel_option() { 

  var fm = document.fwrite; 

  var chk1 = fm.wr_1; 

  var chk2 = fm.wr_2; 

  var chk3 = fm.wr_3;

  var total = fm.wr_5 

  var totalPrice = 0; 

  if(chk1.checked == true) totalPrice += parseInt(chk1.value);

  if(chk2.checked == true) totalPrice += parseInt(chk2.value);

  if(chk3.checked == true) totalPrice += parseInt(chk3.value);

  total.value = totalPrice;

} 

</script></p>

<p>

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

답변 4개

채택된 답변
+20 포인트
M
2년 전

</p>

<p><script>

function sel_option() { 

  var fm = document.fwrite; 

  var chk1 = fm.wr_1; 

  var chk2 = fm.wr_2; 

  var chk3 = fm.wr_3;

  var total = fm.wr_5 

  var totalPrice = 0; 

  if(chk1.checked == true) totalPrice += parseInt(chk1.value.replace(/,/g, ''));

  if(chk2.checked == true) totalPrice += parseInt(chk2.value.replace(/,/g, ''));

  if(chk3.checked == true) totalPrice += parseInt(chk3.value.replace(/,/g, ''));

  total.value = totalPrice;

} 

</script></p>

<p>

이렇게 하시면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

R
RAEAN
2년 전
답변 감사합니다.
이렇게 하면 총금액에서는 백단위 쉼표가 찍혀 있지 않은데요 그럼 어떻게 해야 할까요.?
M
Mins아빠
2년 전
그러면
function numberWithCommas(x) {
return x.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
를 써서 콤마를 추가하시면 됩니다.

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

복스리
2년 전

그누보드 기본 함수 /js/common.js 에 보시면  콤마를 지우는 함수가 있습니다 이를 잘 활용하시면 도움이 되실꺼 같습니다.

 

</p>

<p>// , 를 없앤다.

function no_comma(data)

{

    var tmp = '';

    var comma = ',';

    var i;</p>

<p>    for (i=0; i<data.length; i++)

    {

        if (data.charAt(i) != comma)

            tmp += data.charAt(i);

    }

    return tmp;

}

 </p>

<p>

 

로그인 후 평가할 수 있습니다

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

PHP 에서 출력할 때 , 를 빼세요.

로그인 후 평가할 수 있습니다

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

s
sinbi Expert
2년 전

숫자 천자리 표시 쉼표 제거 함수 이용해 보세요.

https://homzzang.com/b/js-2027

로그인 후 평가할 수 있습니다

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

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

로그인