Home Articles FAQs XREF Games Software Instant Books About Feedback Search Site-Map
irt.org logo

Q538 How can I validate a form field so that leading zeros are dropped, any decimal places are dropped, any non numeric characters produce a warning, and if the resultant number is greater than 999 also produces a warning?

irt.org | Knowledge Base | JavaScript | Form 5 | Q538 [ previous next ]

Q538 How can I validate a form field so that leading zeros are dropped, any decimal places are dropped, any non numeric characters produce a warning, and if the resultant number is greater than 999 also produces a warning?

Try something like:

<script language="JavaScript"><!--
function validate(what) {
    what.output.value = '';
 
    for (var i=0, len=what.input.value.length-1, valid='0123456789.' ; i<len ; i++) {
        if (valid.indexOf(what.input.value.substring(i,i+1)) == -1) {
            alert('invalid data');
            return;
        }
    }
    number = Math.floor(what.input.value - 0);

    if (number < 1000)
        what.output.value = number;
    else
        alert('Greater than 999');

    return;
}
//--></script>

<form onSubmit="return false">
Input: <input type="text" name="input">
<br>Output: <input type="text" name="output">
<br><input type="button" value="Validate" onClick="validate(this.form)">
</form>

Provide feedback ...
AddThis Social Bookmark Button

Provide feedback ... AddThis Social Bookmark Button


Last Updated: 30th March 2008. Maintained by: Martin Webb and Michel Plungjan
irt.org liability, trademark, document use, privacy statement and software licensing rules apply.
Copyright © 1996-2008 irt.org, All Rights Reserved.