숫자에 콤마찍어 보여주기

숫자에 콤마찍어 보여주기

QA

숫자에 콤마찍어 보여주기

본문

아래의 소스는 체크박스와 라디오 버튼 체크시 기본값에다가 체크한 해당 값이 더해지는 소스입니다.

맨밑에 붉은색 소스는 합계가 나오는 곳인데 콤마를 찍어서 보여주려면 어찌해야할까요?

현재는 그냥 숫자만 나옵니다(예 : 123456789원) 123,456,789원 <=요렇게 보여지고 싶어요.

 

 

<meta http-equiv="content-type" content="text/html; charset=utf-8" />

<script>

function car() {

    // (기본)차량가격의 value를 받아 할당!

    var basic_car = Number(document.getElementById("total").defaultValue);

    // 체크박스 input 요소의 갯수 확인!

    // var inputIndex = $("#estimate_tbody input"); // jQuery

    var inputIndex = document.getElementById("plus").getElementsByTagName("input");

 

    for (var i=1; i<=inputIndex.length; i++) {

        var chkObj = document.getElementById("opt"+i);

        if (chkObj.checked) {

            // 가격 추가(+)

            basic_car += Number(chkObj.value);

        }

    }

    // (기본)차량가격 value 값이 추가+

    document.getElementById("total").value = basic_car;

}

 

</script>

 

 

<div style="width:550px;">

 

<span class="font125">제품명</span><br><hr class="style-three">

 

 

<div id='sub_line'>

<ul>

<li class="t11" style="width:135px;padding:7px;height:20px;"><B>옵션명</B>

<li class="t222" style="width:185px;padding:7px;height:20px;"><B>추가 가격</B>

<li class="t22" style="width:185px;padding:7px;height:20px;"><B>선택</B></li>

</ul>

</div>

<div id='plus'>

    <div id='sub_line'>

<ul>

<li class="t4-10"><label for="opt1">인조가죽시트</label>

<li class="t440">350,000원

<li class="t40"><!--옵션 체크 박스를 클릭할 때마다 car() 함수에 지정된 실행문 실행!--><input type="radio" name="opt1" id="opt1" value="0" onclick="car();" checked/><input type="radio" name="opt1" id="opt4" value="350000" onclick="car();"/></li>

</ul>

<ul>

<li class="t4-10"><label for="opt2">네비게이션</label>

<li class="t440">250,000원

<li class="t40"><input type="checkbox" name="opt2" id="opt2" value="250000" onclick="car();"/></li>

</ul>

<ul>

<li class="t4-10"><label for="opt3">선루프</label>

<li class="t440">440,000원

<li class="t40"><input type="checkbox" name="opt3" id="opt3" value="440000" onclick="car();"/></li>

</ul>

</div>

</div>

<div id='sub_line'>

<ul>

<li class="t4-1" style="width:135px;padding:7px;height:20px;">(기본)차량가격

<li class="t4" style="width:385px;padding:7px;height:20px;">13,450,000원</li>

</ul>

</div><br><br>

<div class="font130">총금액 : <input type="text" name="total" id="total" value="13450000" readonly="readonly" style="border: 0px;" class="font130"/></div>

 

</div>

이 질문에 댓글 쓰기 :

답변 2

아래와 같이 해결했습니다.

<script>

var number, nArr;

function number_format( number )

{

  number=number.replace(/\,/g,"");

  nArr = String(number).split('').join(',').split('');

  for( var i=nArr.length-1, j=1; i>=0; i--, j++)  if( j%6 != 0 && j%2 == 0) nArr[i] = '';

  return nArr.join('');

 }

</script>

 

body에 onload='total.value=number_format(total.value) 추가해서 해결했습니다.

그러나, 체크박스나 라디오 버튼 선택시 콤마가 없어져서 해당 div에는  onchange='total.value=number_format(total.value)' 를 추가해줬더니 아주 잘되네요.

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

회원로그인

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