你的
convertToRupiah
看起来不错,但你的
showkerugian()
喂错了吗
angka
进入
convertToRupiah转换器
。
让我们回顾一下
您的代码
:
function convertToRupiah(angka)
{
console.log(angka) // I added this to log what is fed into the function
var rupiah = '';
var angkarev = angka.toString().split('').reverse().join('');
for(var i = 0; i < angkarev.length; i++)
if(i%3 == 0) rupiah += angkarev.substr(i,3)+'.';
return rupiah.split('',rupiah.length-1).reverse().join('');
}
function showkerugian(str)
{
// var tindak_lanjut = $('#nilai_tindak_lanjut').val().replace(".", "").replace(".", "");
var temuan = str.replace(".", "").replace(".", "");
// var total = temuan-tindak_lanjut;
$('#nilai_potensi_kerugian').val(convertToRupiah(temuan));
};
$('input#nilai_temuan').on('keyup focusin focusout ', (function(event)
{
if(event.which >= 37 && event.which <= 40) return;
// format number
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/\B(?=(\d{3})+(?!\d))/g, ".")
;
});
})
);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" oninput="showkerugian(this.value)" class="form-control nominal" id="nilai_temuan" name="nilai_temuan">
<input type="text" class="form-control nominal" name="nilai_potensi_kerugian" id="nilai_potensi_kerugian" readonly>
看到问题了吗?您的代码只删除
.
。
为了解决这个问题,我改变了线路
var temuan = str.replace(".", "").replace(".", "");
进入
var temuan = str.replace(/\./g, "");
将删除所有出现的
。
由于
RegExp
的
g
旗帜
function convertToRupiah(angka) {
var rupiah = '';
console.log(angka)
var angkarev = angka.toString().split('').reverse().join('');
for (var i = 0; i < angkarev.length; i++) {
if (i%3 == 0) {
rupiah += angkarev.substr(i,3)+'.';
}
}
return rupiah.split('',rupiah.length-1).reverse().join('');
}
function showkerugian(str) {
var temuan = str.replace(/\./g, "");
$('#nilai_potensi_kerugian').val(convertToRupiah(temuan));
}
$('input#nilai_temuan').on('keyup focusin focusout ', (function(event) {
if (event.which >= 37 && event.which <= 40) return;
$(this).val(function(index, value) {
return value
.replace(/\D/g, "")
.replace(/\B(?=(\d{3})+(?!\d))/g, ".");
});
})
);
<脚本src=”https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js“></script>
<输入type=“text”oninput=“showkerugian(this.value)”class=“form control nominal”id=“nilai\u temuan”name=“nilai\u temuan”>
<输入type=“text”class=“form control nominal”name=“nilai\u potensi\u kerugian”id=“nilai\u potensi\u kerugian”只读;