user1537415
user1537415

Reputation:

Validate select field

I'm validating a form, but I'm having problems with this particular select validation.

<div class="control-group" id="sukupuoli">
        <label class="control-label">Sukupuoli</label>
        <div class="controls">
            <select name="sukupuoli">
            <option value="Valitse">Valitse</option>
            <option value="Naaras">Naaras</option>
            <option value="Uros">Uros</option>
            </select>
        </div>
</div>

Here's the JS for the validation:

$('#ilmoittuminen').submit(function(){

        var Sukupuoli = $('input[name=sukupuoli]').val()

            if(Sukupuoli  == "Valitse"){
            $('.control-group#sukupuoli').addClass("error");
            $('select[name=sukupuoli]').focus();
            return false; 
            }

            var ilmoittautumisdata = $('#ilmoittuminen').serialize();
            $.ajax({
                url: "",
                data: ilmoittautumisdata,
                type: "POST"})
            .done(function () {

                })
            .error(function () {
            $('.control-group').addClass("alert");
            });

                return false;
});

It doesn't submit, but it doesn't add the class error either. A fiddle.

Upvotes: 6

Views: 275

Answers (2)

SaidbakR
SaidbakR

Reputation: 13544

You don't need to use $('.control-group#sukupuoli').addClass("error"); just select it by the id only:

$('#sukupuoli').addClass("error");

Upvotes: 2

Andrew Whitaker
Andrew Whitaker

Reputation: 126042

You should be using select here:

var Sukupuoli = $('select[name=sukupuoli]').val()

Example: http://jsfiddle.net/HV7sn/1/

Upvotes: 3

Related Questions