function checkNumberEntry(input, min, max, msg) {
var str = input.value;
if (str == null || input.length == 0) {
msg = msg + " is blank. You must fill in this field to calculate.";
alert(msg);
return false;
}
for (var i = 0; i < str.length; i++) {
var curr_ch = str.substring(i, i + 1)
if ((curr_ch < '0' || curr_ch > '9') && curr_ch != '.') {
msg = msg + " should only contain digits. You entered: " + input.value;
alert(msg);
return false;
}
}
var num = input.value;
if ((min != -9999) && num<min) {
msg = msg + " that's too low: " + input.value + " Please enter values greater than " + min + ".";
alert("You have entered a " + msg);
return false;
}
if ((max != -9999) && num > max) {
msg = msg + " that's high: " + input.value + " Please enter values less than " + max + ".";
alert("You have entered a " + msg);
return false;
}
input.value = str;
return true;
}
function myRound(val) {
 val = val * 100;
  val = Math.round(val);
  return val / 100;
  }
  function computeField(input) {
 if (input.value != null && input.value.length != 0)
  input.value = "" + eval(input.value);
  compute(input.form);
  }
  function compute(form) {
  var Price = form.price.value;
  var interest = form.Interest.value;
  var months = form.Months.value;
  if (!checkNumberEntry(form.price, 0, -9999, "Price")) {
  form.payment.value = "Invalid";
  return;
  }
  if (!checkNumberEntry(form.down, 0, parseFloat(Price), "Down Payment")) {
  form.payment.value = "Invalid";
  return;
  }
  if (!checkNumberEntry(form.Months, 1, -9999, "# of Months")) {
  form.payment.value = "Invalid";
  return;
  }
  if (!checkNumberEntry(form.Interest, 1, 99, "% Interest Rate")) {
  form.payment.value = "Invalid";
  return;
  }
  Price = Price - form.down.value;
  interest = (interest / 100.0) / 12;
  var pow = 1;
  for (var j = 0; j < months; j++)
  pow = pow * (1 + interest);
  var pmt = (Price * pow * interest) / (pow - 1);
  form.payment.value = myRound(pmt);
  }
  function clearForm(form) {
  form.payment.value = "";
  }