숫자값의 콤마찍기 재 질문 드립니다. 채택완료
아래는 콤마찍기전에 스크립 계산을 적용한 내용입니다.
계산은 잘되는데 문제는 출력값에 콤마가 안찍히네요.
구글링 해도 답이 없습니다.
<a onclick="setmony(100000); reduce()" >
<input name="a" type="text" value="0" readonly id="a" size="7" >
</a>
<a onclick="setmony2(500000); reduce()" >
<input name="b" type="text" value="0" readonly id="b" size="7" >
</a>
<a onclick="setmony3(1000000); reduce()" >
<input name="c" type="text" value="0" readonly id="c" size="7" >
</a>
<script language="JavaScript">
function setmony(i) {
var x = document.getElementById("a");
x.value = parseInt(x.value) + i;
}
</script>
<script language="JavaScript">
function setmony2(i) {
var x = document.getElementById("b");
x.value = parseInt(x.value) + i;
}
</script>
<script language="JavaScript">
function setmony3(i) {
var x = document.getElementById("c");
x.value = parseInt(x.value) + i;
}
</script>
<script language="JavaScript">
function reduce() {
var a = parseInt(document.getElementById('a').value) | 0;
var b = parseInt(document.getElementById('b').value) | 0;
var c = parseInt(document.getElementById('c').value) | 0;
document.getElementById('me_send_point2').value = a+b+c;
var reduce = value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")
}
</script>
<script language="JavaScript">
function setmony(i) {
var x = document.getElementById("a");
x.value = parseInt(x.value) + i;
var setmony = $('#a').text();
var setmony = setmony.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
</script>
--------------------------------------------------------------------------
아래는 합계값의 콤마 값인데 안되구요.
.replace(/\B(?=(\d{3})+(?!\d))/g, ",")
1번항목에 아래와 같이 줘도 안됩니다.
<script language="JavaScript">
function setmony(i) {
var x = document.getElementById("a");
x.value = parseInt(x.value) + i;
var setmony = $('#a').text();
var setmony = setmony.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
</script>
답변 2개
me_send_point2 :
function setmony(i) {
var x = document.getElementById("a");
x.value = parseInt(x.value) + i;
}
function setmony2(i) {
var x = document.getElementById("b");
x.value = parseInt(x.value) + i;
}
function setmony3(i) {
var x = document.getElementById("c");
x.value = parseInt(x.value) + i;
}
function reduce() {
var a = parseInt(document.getElementById('a').value) || 0;
var b = parseInt(document.getElementById('b').value) || 0;
var c = parseInt(document.getElementById('c').value) || 0;
var value = a+b+c;
var reduce = value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",")
document.getElementById('me_send_point2').value = reduce;
}
답변에 대한 댓글 8개
합계부분에는 콤마가 잘나옵니다.
그런데 혹시요.
아래값 "a" 에도 콤마 찍을 방법이 있을런지요?
-------------------------------------------------------
<script language="JavaScript">
function setmony(i) {
var x = document.getElementById("a");
x.value = parseInt(x.value) + i;
}
</script>
----------------------------------------------
<a onclick="setmony(100000); reduce()" >
<input name="a" type="text" value="0" readonly id="a" size="7" >
</a>
계산할때 콤마 제거후 계산
정도로 하면 될것 같습니다.
var reduce = value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",") 이함수를 빼고..
<input name="a" type="text" value="0" readonly id="a" size="7" >
value="0" -> value="replace(/\B(?=(\d{3})+(?!\d))/g, ",")" 이렇게 해보란내용이신지요? ㅎㅎ
<input name="a" type="text" value="0" readonly id="a" size="7" onclick="setmony(this, 100000)">
<input name="b" type="text" value="0" readonly id="b" size="7" onclick="setmony(this, 500000)">
<input name="c" type="text" value="0" readonly id="c" size="7" onclick="setmony(this, 1000000)">
me_send_point2 : <input id="me_send_point2">
<script>
function comma(value, on) {
if (on == true) {
return value.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
} else {
return value.replace(/,/g, '');
}
}
function setmony(obj, n) {
var value = parseInt(comma(obj.value, false)) + n;
obj.value = comma(value, true);
reduce();
}
function reduce() {
var a = parseInt(comma(document.getElementById('a').value, false)) || 0;
var b = parseInt(comma(document.getElementById('b').value, false)) || 0;
var c = parseInt(comma(document.getElementById('c').value, false)) || 0;
var value = a+b+c;
var reduce = comma(value, true);
document.getElementById('me_send_point2').value = reduce;
}
</script>
[/code]
<label class="b" for="b"><i class="fa fa-plus-circle" style="font-size: 20px; font-weight:bold; color:#000; margin-top: 5px; float:right;"></i></label> 라벨로 클릭하게 만들어서 해결했습니다.^^
이거 방법이좀 있을까요? 여러분들이 봐주고는 있는데요 . 어떻게 보면 쉬운거 같은데 잘 안되네요.
안되는거 이거 하나만.. 남았는데 여기서 좀 막히네요.
염치불구하고 여쭤 봅니다.
https://sir.kr/qa/507159?sfl=mb_id%2C1&lstx=ckh0941
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인