Fixed Javascript validation of numerical values (HTML-436)

* Will reject decimal values if concept.precise is false
* Will reject values that can be parsed as numerical by parseInt/parseFloat but contain invalid characters, e.g. "123x"