자바스크립트 합계에 대한 질문 입니다. ㅠ 채택완료
레스트ㅡ제윤아빠
10년 전
조회 4,072
</p><p><script language="javascript">
function addItem() {
var lo_table = document.getElementById("TblAttach");
var row_index = lo_table.rows.length; // 테이블(TR) row 개수
newTr = lo_table.insertRow(row_index);
newTr.idName = "newTr" + row_index;
newTd=newTr.insertCell(0);
newTd.innerHTML= "<input type=text name="situation[]" align=absmiddle >";
newTd=newTr.insertCell(1);
newTd.align = "center";
newTd.innerHTML= "<input type=text name="money[]" align=absmiddle >";
}
function delItem(){
var lo_table = document.getElementById("TblAttach");
var row_index = lo_table.rows.length-1; // 테이블(TR) row 개수
if(row_index > 0) lo_table.deleteRow(row_index);
}
</script></p><p>
해당의 소스로 추가 버튼을 누르게 되면
입력창이 2개가 나오며, 추가 버튼이 누르면 아래로 계속 추가가 되어집니다.
현재 "";
이곳에서 입력되는 숫자들에 대해 합계를 구하려고 하는데...
자스는 정말 어렵네요...
동적으로 추가 될때마다 자동으로 합산이 되었으면 하는데...
조언 좀 부탁 드립니다.
댓글을 작성하려면 로그인이 필요합니다.
답변 2개
채택된 답변
+20 포인트
10년 전
</p><p>function sum() {</p><p> var obj = document.getElementsByName("money[]");</p><p> var total = 0;</p><p> for(i=0; i<obj.length; i++) {</p><p> total += parseInt(obj[i].value);
}</p><p> alert(total);
}</p><p>
이런 식으로 하면 되겠네요.
http://nyaongii.dothome.co.kr/temp/wrid_81862.html">http://nyaongii.dothome.co.kr/temp/wrid_81862.html
로그인 후 평가할 수 있습니다
답변에 대한 댓글 8개
�
레스트ㅡ제윤아빠
10년 전
�
왕계란
10년 전
저 링크로 가 보면 아시겠지만 addItem()이랑 delItem() 이 함수랑 관련된 건 아예 건들지도 않았는데 기존 스크립트가 작동을 안 한다는 건 다른 부분이 문제라고 볼 수밖에 없겠네요.
하나식 찍어 보면서 테스트 해 보시는 수밖에 없겠네요.
하나식 찍어 보면서 테스트 해 보시는 수밖에 없겠네요.
�
레스트ㅡ제윤아빠
10년 전
아하...ㅠ 숫자 합이 잘 되네요.
혹시 sum 클릭 및 alert의 값 확인 말고...
<span id="total></span>
이런식으로 출력이 되게 할수도 있을까요 ? ㅠ
혹시 sum 클릭 및 alert의 값 확인 말고...
<span id="total></span>
이런식으로 출력이 되게 할수도 있을까요 ? ㅠ
�
레스트ㅡ제윤아빠
10년 전
무지하더라도 이해 부탁드립니다. ㅠ
�
왕계란
10년 전
document.getElementById("total").innerHTML = total;
이런 식으로 하시면 될 것 같네요.
근데 자바스크립트 변수명이랑 중복되니까 다른 이름으로 바꾸시는 게 ㅎㅎ
이런 식으로 하시면 될 것 같네요.
근데 자바스크립트 변수명이랑 중복되니까 다른 이름으로 바꾸시는 게 ㅎㅎ
�
레스트ㅡ제윤아빠
10년 전
function sum() {
var obj = document.getElementsByName("money[]");
var total = 0;
for(i=0; i<obj.length; i++) {
total += parseInt(obj[i].value);
}
document.getElementById("total_money").innerHTML = total;
//alert(total);
}
해당 형식 으로하고,
<table>
<tbody>
<th>합계</th>
<td>\<span id="total_money" onClick="sum();">클릭</span></td>
</tbody>
</table>
이렇게 하니...클릭하면 나오는군요 ㅎ 감사합니다.
혹 클릭하지 않고 실시간 반영도 가능한지요...ㅠ 자꾸 물어 죄송합니다 ㅠㅠ
var obj = document.getElementsByName("money[]");
var total = 0;
for(i=0; i<obj.length; i++) {
total += parseInt(obj[i].value);
}
document.getElementById("total_money").innerHTML = total;
//alert(total);
}
해당 형식 으로하고,
<table>
<tbody>
<th>합계</th>
<td>\<span id="total_money" onClick="sum();">클릭</span></td>
</tbody>
</table>
이렇게 하니...클릭하면 나오는군요 ㅎ 감사합니다.
혹 클릭하지 않고 실시간 반영도 가능한지요...ㅠ 자꾸 물어 죄송합니다 ㅠㅠ
�
왕계란
10년 전
addItem() 함수 제일 밑에
newTd.onkeyup = function() {
sum();
};
넣어 보세요.
newTd.onkeyup = function() {
sum();
};
넣어 보세요.
�
레스트ㅡ제윤아빠
10년 전
진심으로 감사드립니다.
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
올려주신 소스를 넣으니 동적 추가가 또 않되구요...ㅠ