I am doing angular js dropdown validation but getting problem when doing dropdown validation.

I have taken everything from this website and using this code: https://github.com/turinggroup/angular-validator

Demo

But in the above link there is nothing like doing validation on Dropdwon control.So if anybody have use this same code for doing dropdown validation and if successfull then please do guide me.

This is the plunker i have created which includes dropdown:

MyDropdownControlFullDemo

And this is my dropdown code:

     <select class="form-control m-b-sm" required ng-model="form.Obj" ng-options="c.Name for c in Obj track by c.Id">
                 </select>

 $scope.Obj = [
    {Id : '0', Name : 'Select' }, 
        {Id : '1', Name : 'USA' },       
        {Id : '2', Name : 'Canada' },
        {Id : '3', Name : 'Russia' } ];

}

  $scope.Obj = { Id: '0', name: 'Select' };

What i want that if user doesnt select any option from dropdown then validation should appear just like validation appears for textbox control.

share|improve this question

You need to change your code like as -

in Html for select list-

    <select class="form-control m-b-sm" name="selectbox"  required-message="'Yo! This field is required..'"
                            required ng-model="form.Obj" ng-options="c.Name for c in Objlist track by c.Id">
                  <option value="">Select</option>
</select>

And Controller will look like as-

 angular.module('angular-validator-demo').controller('DemoCtrl',function($scope){

 $scope.Objlist = [
    {Id : '0', Name : 'Select' }, 
        {Id : '1', Name : 'USA' },       
        {Id : '2', Name : 'Canada' },
        {Id : '3', Name : 'Russia' } ];



  $scope.Obj = { Id: '0', name: 'Select' };

    $scope.submitMyForm = function(){
        alert("Form submitted");
    };

    $scope.myCustomValidator = function(text){      
        return true;
    };


    $scope.anotherCustomValidator = function(text){
        if(text === "rainbow"){
            return true;
        }
        else return "type in 'rainbow'";
    };

    $scope.passwordValidator = function(password) {

        if(!password){return;}

        if (password.length < 6) {
            return "Password must be at least " + 6 + " characters long";
        }

        if (!password.match(/[A-Z]/)) {
             return "Password must have at least one capital letter";
        }

        if (!password.match(/[0-9]/)) {
             return "Password must have at least one number";
        }

        return true;
    };



});
share|improve this answer
    
you solution is not working correctly like what happens if i take one textox and one dropdown control with you code then entering any value in textbox control and not selecting anything but still my form get submitted on click of button submit – Learning Mar 30 '16 at 3:28

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.