<!-- hide from old browsers
function roundOff(value, precision) {
        value = "" + value //convert value to string
        precision = parseInt(precision);
        var whole = "" + Math.round(value * Math.pow(10, precision));
        var decPoint = whole.length - precision;        if(decPoint != 0)
        {                result = whole.substring(0, decPoint);
                result += ".";
                result += whole.substring(decPoint, whole.length);        }
        else        {                result = whole;        }
        return result;
}
function CheckFees(input) {
  if (input.value < 0 || input.value > 1000000 ) {
    input.value = "*ERR*";
  }
  return;
}
function CheckAmnt(input) {
  if (input.value < 1 || input.value > 1000000 ) {
    input.value = "*ERR*";
  }
  return;
}
function CheckInt(input) {
  if (input.value < 1) {
    input.value = "*ERR*";
  }
  return;
}
function CheckYr(input) {
  if (input.value < 1 || input.value > 100) {
    input.value = "*ERR*";
  }
  return;
}
function CheckPnts(input) {
  if (input.value < 0 || input.value > 10) {
    input.value = "*ERR*";
  }
  return;
}
function CalcLoanPayment(Loan_Amount, rate_Rate, Term_Years) {
  var A = Loan_Amount;
  var i = rate_Rate;
  var n = Term_Years;
  return A/CalcPv(i/12, n*12);
}
function CalcPv(i,n)
{
  return (1-Math.pow(1+i,-n))/i;
}
function CalcAPR(form,rate_Rate, Term_Years, Points, Fees, Loan_Amount) {
  var i = parseFloat(rate_Rate);
  var n = parseInt(Term_Years);
  var p = parseFloat(Points);
  var fe = parseFloat(Fees);
  var A = parseFloat(Loan_Amount);
  var f = 0;
  var f1 = 0;
  var iflag = 0;
  p = (A * (p * .01));
  f1=(A-(p+fe))/(CalcLoanPayment(A,i,n)*12);
  f = 999;
  i = 0;
  while (f > f1) { i = i + .01;      f = CalcPv(i/12,n*12)/12; }
  while (f < f1) { i = i - .001;     f = CalcPv(i/12,n*12)/12; }
  while (f > f1) { i = i + .0001;    f = CalcPv(i/12,n*12)/12; }
  while (f < f1) { i = i - .00001;   f = CalcPv(i/12,n*12)/12; }
  while (f > f1) { i = i + .000001;  f = CalcPv(i/12,n*12)/12; }

  return(i);
}
function computeForm(form)
{
    if ((form.term.value == null || form.term.value.length == 0) || (form.rate.value == null || form.rate.value.length == 0) || (form.points.value == null || form.points.value.length == 0))
    {
       return;
    }
    var i = form.rate.value * .01;
    var n = form.term.value;
    var p = form.points.value;
    var fee = form.fees.value;
    var A = form.amount.value;
  i = CalcAPR(form,i, n, p, fee, A);
  temp = (i*100);
  temp = roundOff(temp, 3);
  form.AprResult.value = temp;
  temp = CalcLoanPayment(A, i, n);
  temp = roundOff(temp, 2);
  form.PmntResult.value =  temp;
  return;
}
<!-- done hiding from old browsers -->