Removing everything except numbers in a string
This is the shortest:
replace(/\D/g,'');
Note that you should use the correct DOM id to refer via getElementById. You can use the .replace() method for that:
var loan_amt = document.getElementById('loan_amt');
loan_amt.value = loan_amt.value.replace(/[^0-9]/g, '');
But that will remove float point delimiter too. This is an answer to your question, but not a solution for your problem. To parse the user input as a number, you can use parseFloat() - I think that it will be more appropriate.
Here is my solution:
const filterNum = (str) => {
const numericalChar = new Set([ ".",",","0","1","2","3","4","5","6","7","8","9" ]);
str = str.split("").filter(char => numericalChar.has(char)).join("");
return str;
}
console.log(filterNum("143.33$"));
// 143.33