Uriahs Victor
Uriahs Victor

Reputation: 1155

Disable button until required fields are valid

I've searched for the answer to this problem but still can't get this to work:

<script type="text/javascript"> 
$(document).ready(function (){
    validate();
    $('#contact_subject').change(validate);
});

function validate(){
    if ($('#contact_subject').val().length   >   0  {
        $('button').prop('disabled', false);
    }
    else {
       $('button').prop('disabled', true);
    }
}

</script>

I want to make sure #contact_subject has data or else disable the button.

Upvotes: 4

Views: 2421

Answers (2)

MikeVelazco
MikeVelazco

Reputation: 905

Change the event.Try this: http://jsfiddle.net/e0t7qv56/1/

$("#field").keyup(function(){
    console.log($(this).val().length);
    if($(this).val().length)
        $("#btn").prop('disabled', false);
    else
        $("#btn").prop('disabled', true);
});

Upvotes: 2

Nikhil Aggarwal
Nikhil Aggarwal

Reputation: 28455

I think you are missing a bracket ) in if condition

function validate(){
    if ($('#contact_subject').val().length   >   0)  {
        $('button').prop('disabled', false);
    }
    else {
       $('button').prop('disabled', true);
    }
}

Upvotes: 5

Related Questions