Return from inner function in JavaScript?

Jak*_*les 2 javascript jquery

I have a jQuery-powered JavaScript function which iterates over a list of fields and checks to see whether they are empty; if so, blocks the submission of the form.

required_fields.forEach(function(field) {
    if (field.val() == '')
    {
        field.addClass('field-highlight');
        return false;
    }
    else
    {
        field.removeClass('field-highlight');
    }
});

// I want to return to here from the return false point
Run Code Online (Sandbox Code Playgroud)

How can I structure this differently to do what I want?

Tat*_*nen 5

只需使用变量来跟踪验证:

var is_valid = true;

required_fields.forEach(function(field) {
    if (field.val() == '') {
        field.addClass('field-highlight');
        is_valid = false;
        return false;
    } else  {
        field.removeClass('field-highlight');
    }
});

return is_valid;
Run Code Online (Sandbox Code Playgroud)

或者,您也可以使用field-highlight该类:

required_fields.forEach(function(field) {
    if (field.val() == '') {
        field.addClass('field-highlight');
        return false;
    } else  {
        field.removeClass('field-highlight');
    }
});

return $('.field-highlight').length == 0;
Run Code Online (Sandbox Code Playgroud)