The selected answer works, but it's not elegant or scalable. Each field is hard-coded for some reason, even though you already went to the trouble of adding a class for each required input.
Instead, just cycle through each item with the class '.disableButton':
$('.disableButton').on('keyup change', function() {
var empty = false;
$('.disableButton').each(function() {
if ($(this).val() == '') {
empty = true;
}
});
if (empty) {
$('#emailPassSubmit').prop('disabled', true);
} else {
$('#emailPassSubmit').prop('disabled', false);
}
});
Just make sure that each field (works with text input, drop down, etc) has the class "disableButton". Also, drop downs must have the default value of "", which yours does.
This way, in the future, you could add as many fields as you like and as long as you had the correct class, you don't have to touch this code at all.