자바스크립트 01 을 1로 표현
본문
var input = document.getElementById('wr_9');
input.value = input.value.replace(',', '').trim();
위와 같은 코드인데, 01,444는 01444로 그대로 나오네요.
콤마는 삭제 했는데, 앞에 0은 어떻게 삭제하나요?
$a = '0 1400';
위와 같은 경우도 중간에 빈칸이 삭제 안됨
답변 4
문자열을 숫자로 바꾸시기는걸 원하시는 같네요.~~
삭제를 한다기 보다 숫자로 표현해보심이 어떨까요?
parseInt(input.value);
Number(input.value);
요렇게 2개 함수를 이용해보셔서 적절한 숫자만 나오는걸로 확인해보시면 좋을꺼 같습니다.
input.value = Number(input.value.replaceAll(',', '').replaceAll(' ', ''));
input.value = input.value.replace(/^[0]+/, '').replace(',', '').trim();
요렇게 요렇게 고우~화이팅!
<script>
function fn_convert_to_num(selector) {
const numtxt = document.querySelectorAll(selector);
numtxt.forEach((el, i) => {
const val = el.value.replace(/[^\d]/g, '');
el.value = Number(val);
});
}
</script>
<ul>
<li><input type="text" class="numtxt" name="wr_1" value="12,345"></li>
<li><input type="text" class="numtxt" name="wr_2" value="012,345"></li>
<li><input type="text" class="numtxt" name="wr_3" value="12, 345"></li>
<li><input type="text" class="numtxt" name="wr_4" value="001,234 5"></li>
<li><input type="text" class="numtxt" name="wr_5" value="123,45"></li>
<li><input type="text" class="numtxt" name="wr_6" value="00012 345"></li>
<li><input type="text" class="numtxt" name="wr_7" value="1234,5"></li>
<li><input type="text" class="numtxt" name="wr_8" value="00,0 012345"></li>
<li><input type="text" class="numtxt" name="wr_9" value="12 3 4 5"></li>
</ul>
<input type="button" onclick="fn_convert_to_num('.numtxt')" value="convert">
답변을 작성하시기 전에 로그인 해주세요.