user963395
user963395

Reputation:

validate field length

i want my roll number length should be equl to 4 and the data inserted can only be integer..

how can it be possible through java script

i am trying this code but it is just checking it, if roll number is greater then 4 it displays error but also insert the roll number

function rollnumber(elem, min, max){

    var uInput = elem.value;
    if(uInput.length >= min && uInput.length <= max){
        return true;
    }else{
        alert(" nter between " +min+ " and " +max+ " characters");
        elem.focus();
        return false;
    }


}
rollnumber(document.getElementById('rollnumber'), 1, 4);

return true; 

Upvotes: 0

Views: 4233

Answers (1)

Silviu-Marian
Silviu-Marian

Reputation: 10907

  1. It confuses the javascript rollnumber is both a function name and an element id.
  2. The function needs to be executed on a form when it submits otherwise it will continue submitting instead of stopping
  3. Here is the fixed code. Tested.

    <form onsubmit="e_rollnumber()">
        <input type="text" id="rollnumber" />
        <input type="submit" value="Click here to roll the number" />
    </form>
    
    <script type="text/javascript">
        function e_rollnumber(){
            var len = {min:1,max:4};
            var input = document.getElementById('rollnumber');
    
            if(input.value.length>=len.min && input.value.length<=len.max) return true;
            alert("Please enter between " +len.min+ " and " +len.max+ " characters");
            input.focus();
            return false;
        };
    </script>
    

Upvotes: 1

Related Questions