I experienced an error when I was about to enter the Harga Dasar using the IDR format
input
<input class="form-control input-currency" name="harga_produk" type="text" type-currency="IDR" placeholder="Rp" required>
my Controller
public function store(Request $request) {
$produk = Produk::create($request->all());
return response()->json('Data berhasil Disimpan', 200);
}
format money javascript
document.querySelectorAll('input[type-currency="IDR"]').forEach((element) => {
element.addEventListener('keyup', function(e) {
let cursorPostion = this.selectionStart;
let value = parseInt(this.value.replace(/[^,d]/g, ''));
let originalLenght = this.value.length;
if (isNaN(value)) {
this.value = "";
} else {
this.value = value.toLocaleString('id-ID', {
currency: 'IDR',
style: 'currency',
minimumFractionDigits: 0
});
cursorPostion = this.value.length - originalLenght + cursorPostion;
this.setSelectionRange(cursorPostion, cursorPostion);
}
});
});