계산식 Input에 벨류값 바꾸면 계산이 안됩니다... 뭐가 문제일까요 채택완료
계산식인데요...
글작성시는 0원이 뜨게 하고 작성된 글을 수정할때 0원이 뜨길래 수정하려고 해도 NaN 이라는 거만 뜨고
계산이 안되더라구여... 뭐가 문제일까요
빨간색으로 표시해놓은 부분이 코드 부분 입니다.
Value="0" 이부분을 제가 뒤에 코드 지우고 나서 벨류안에다가
Value=""
이렇게 진행 하면 수정했을때 계산된 값을 잘 불러오긴 합니다.
근데 추가 계산 하려고 하는 순간 바로 NaN이 나와버립니다 ㅠ...
계산 스크립트 입니다.
--------------------------------------------------------------------------
function Calculator() {
let total = Number(document.getElementById("total").defaultValue);
for(let i = 1; i <= 100; i++){
let chkbox = document.getElementById("price" + i);
let qty = document.getElementById("qty" + i);
if (chkbox && chkbox.checked) {
total += Number(chkbox.value) * Number(qty.value);
}
}
// 숫자 형식을 변경하여 total을 업데이트
document.getElementById("total").value = total.toLocaleString();
}
for(let i = 1; i <= 100; i++) {
let check = document.getElementById("price" + i);
let check2 = document.getElementById("qty" + i);
if (check) {
check.onclick = Calculator;
}
if (check2) {
check2.onchange = Calculator;
}
}
--------------------------------------------------------------------------
글 작성할때는 우선 잘됩니다.
근데 수정 할때만 계산식이 틀어져 버립니다...
이런경우 어떻게 해야될까요
글쓰기 할때 기본값 0 체크박스 클릭해서 가격 추가 될때마다 가격 추가로 오르고
글작성 누르면 저장이 됩니다 여기까지는 잘 됩니다.
글 수정할때 wr_100에 저장된 값을 잘 불러옵니다.
추가 계산을 하기 위해서 체크박스 클릭 하는 순간 NaN 이 라는 문구가 나옵니다..
어떻게 해결해야될까요..
답변 1개
1.
value="" readonly="readonly">
2.
let total = Number(document.getElementById("total").defaultValue);
→
let total = 0;
답변에 대한 댓글 2개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
예를들면 12,398,333원 이면
수정 들어가면 12 원 이라고만 나오는데 이건 뭐 때문일까요..