javascript if number greater than number

forms, javascript

Solution

You should convert them to number before compare.

Try:

if (+x > +y) {
  //...
}

or

if (Number(x) > Number(y)) {
  // ...
}

Note: `parseFloat` and `pareseInt`(for compare integer, and you need to specify the radix) will give you `NaN` for an empty string, compare with `NaN` will always be `false`, If you don't want to treat empty string be `0`, then you could use them.

Problem

I have this javascript function to validate if a number is greater than another number ``` function validateForm() { var x = document.forms["frmOrder"]["txtTotal"].value; var y = document.forms["frmOrder"]["totalpoints"].value; if (x > y) { alert("Sorry, you don't have enough points"); return false; } } ``` It's not working for some reason. If I do `alert(x)` I get 1300, and `alert(y)` gives 999 This works.... ``` function validateForm() { var x = 1300; var y = 999; if (x > y) { alert("Sorry, you don't have enough points"); return false; } } ```

Original source

Related problems