I am validating a form using jQuery. It is working perfectly, but I just feel the code is quite bulky. There is a lot of if statements being used to achieve this logic in the app.sendForm.init() function. I think this could be tidied and any advice here would be greatly appreciated. Perhaps I should be using a switch statement instead?use strict;/*create namespace to prevent cluttering of the global namespace*/ var app = app || {};(function(){    app.initialize = {        init: function() {            app.sendForm.init();        }    };    app.sendForm = {        init: function(){                $(#entry).submit(function( event ) {                var userEmail = $(#email),                    userName = $(#first_name),                    userLastName = $(#last_name),                    date = $(#birth_day),                    month = $(#birth_month),                    year = $(#birth_year),                    contestName = $(#contest1_name),                    countryName = $(#country),                    privacyCheck = $('#privacy_check');                if (![contestName, date, month, year, countryName, userName, userLastName]                    .every(app.validation.empty) || !app.validation.dateOfBirth(date, month, year) || !app.validation.email(userEmail) ) {                    event.preventDefault();                    alert(There are errors with your form.);                            //set invalid class on form elements if errors                    app.setInvalidClass.init(!app.validation.email(userEmail), userEmail);                    app.setInvalidClass.init(!app.validation.empty(userName), userName);                    app.setInvalidClass.init(!app.validation.empty(userLastName), userLastName);                    app.setInvalidClass.init(!app.validation.empty(contestName), contestName);                    app.setInvalidClass.init(!app.validation.empty(countryName), countryName);                    app.setInvalidClass.init(!app.validation.empty(date), date);                    app.setInvalidClass.init(!app.validation.empty(month), month);                    app.setInvalidClass.init(!app.validation.empty(year), year);                    //ternary operator to check if privacy box was checked                    privacyCheck.css(privacyCheck.is(':checked') ?                        { outline: 'none'} :                        { outline: 'red solid thin'});                } else {                    alert(You have entered the competition.);                }                  });        }    };         /*     * Validation     */    app.validation = {                //Validate email address.        email: function(id) {            var emailVal = id.val(),                re = /^(([^<>()[\]\\.,;:\s@\]+(\.[^<>()[\]\\.,;:\s@\]+)*)|(\.+\))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;            return re.test(emailVal);        },        //Check if value is empty.        empty: function(id) {            var elementVal = $.trim(id.val());            if(elementVal.length > 0)                return true;        },        //Check user's age.        dateOfBirth: function(date, month, year) {            var forbiddenAge = 14;            var DOB = date.val() +   + month.val() +   + year.val();            var today = new Date();            var birthDate = new Date(DOB);            var age = today.getFullYear() - birthDate.getFullYear();            var m = today.getMonth() - birthDate.getMonth();            if (m < 0 || (m === 0 && today.getDate() < birthDate.getDate())) {                age--;            }                if(age < forbiddenAge){                alert(You are under 14. You are unable to enter the competition);                return false;            }            else{                return true;            }        }    };    app.setInvalidClass = {        init: function (invalidCondition, jQueryObject) {            if(invalidCondition) {                jQueryObject.addClass('invalid');            }            else {                jQueryObject.removeClass('invalid');            }        }    };    $(document).ready(app.initialize .init);})(jQuery);body {    background-color: #fff;    color: #000;    font-family: 'Arial', sans-serif;    margin: 0;}#entry {    font-family: 'Arial', sans-serif;    max-width: 400px;    margin: 0 auto;}#entry input,#entry select {    display: block;    margin-bottom: 10px;}#entry label {    padding-bottom: 5px;}#entry #birth_day,#entry #birth_month,#entry #birth_year {    display: inline-block;}#entry input[type=submit] {    display: block;    border: 1px solid #1e1e1e;    text-transform: uppercase;    font-family: 'Arial', sans-serif;    font-size: 16px;    font-weight: 400;    text-transform: capitalize;    text-decoration: none;    color: #fff;    line-height: 20px;    letter-spacing: .5px;    max-width: 150px;    height: 40px;    padding: 0 10px;    background: #1e1e1e;    text-shadow: none;    box-shadow: none;    -webkit-box-shadow: none;    font-weight: 400;    margin-top: 15px;}#privacy {    font-size: 12px;}.invalid {    border-color: #ed0000;    background-color: #ffd8d8;}<!DOCTYPE html><html lang=en><head>    <meta charset=utf-8>    <meta http-equiv=X-UA-Compatible content=IE=edge>    <meta name=viewport content=width=device-width, initial-scale=1.0>    <link rel=stylesheet type=text/css href=style.css>    <!-- JQUERY CDN -->    <script src=https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js></script>    <!-- JAVASCRIPT -->    <script src=script.js></script></head><body>        <noscript>        For full functionality of this site it is necessary to enable JavaScript.        Here are the <a href=http://www.enable-javascript.com/ target=_blank>        instructions how to enable JavaScript in your web browser</a>.    </noscript>    <div>        <form id=entry>        <label for=first_name>First name:</label>        <input id=first_name type=text name=first_name />        <label for=last_name>Last name:</label>        <input id=last_name  type=text name=last_name />        <label>Country/Region</label>        <select id=country name=country>            <option value=>Select Your Country/Region</option>            <option value=GB>United Kingdom</option>            <option value=AF>Afghanistan</option>            <option value=AX>Aland Islands</option>            <option value=AL>Albania</option>            <option value=DZ>Algeria</option>            <option value=AS>American Samoa</option>            <option value=BO>Bolivia</option>            <option value=BA>Bosnia and Herzegovina</option>            <option value=BW>Botswana</option>            <option value=BV>Bouvet island</option>            <option value=BR>Brazil</option>            <option value=IO>British Indian Ocean Territory</option>            <option value=BI>Burundi</option>            <option value=KH>Cambodia</option>        </select>        <label for=email>Email:</label>        <input id=email type=text name=email />        <label>Date of Birth</label>        <select id=birth_day name=birth_day>            <option value=>DD</option>            <option value=1>1</option>            <option value=2>2</option>            <option value=3>3</option>            <option value=4>4</option>            <option value=5>5</option>            <option value=6>6</option>            <option value=7>7</option>            <option value=8>8</option>            <option value=9>9</option>            <option value=10>10</option>            <option value=11>11</option>            <option value=12>12</option>            <option value=13>13</option>            <option value=14>14</option>            <option value=15>15</option>            <option value=16>16</option>            <option value=17>17</option>            <option value=18>18</option>            <option value=19>19</option>            <option value=20>20</option>            <option value=21>21</option>            <option value=22>22</option>            <option value=23>23</option>            <option value=24>24</option>            <option value=25>25</option>            <option value=26>26</option>            <option value=27>27</option>            <option value=28>28</option>            <option value=29>29</option>            <option value=30>30</option>            <option value=31>31</option>        </select>        <select id=birth_month name=birth_month>            <option value=>MM</option>            <option value=JAN>January</option>            <option value=FEB>February</option>            <option value=MAR>March</option>            <option value=APR>April</option>            <option value=MAY>May</option>            <option value=JUN>June</option>            <option value=JUL>July</option>            <option value=AUG>August</option>            <option value=SEP>September</option>            <option value=OCT>October</option>            <option value=NOV>November</option>            <option value=DEC>December</option>        </select>        <select id=birth_year name=birth_year>            <option value=>YYYY</option>            <option value=2007>2007</option>            <option value=2006>2006</option>            <option value=2005>2005</option>            <option value=2004>2004</option>            <option value=2003>2003</option>            <option value=2002>2002</option>            <option value=2001>2001</option>            <option value=2000>2000</option>            <option value=1999>1999</option>            <option value=1998>1998</option>            <option value=1997>1997</option>            <option value=1996>1996</option>            <option value=1995>1995</option>            <option value=1994>1994</option>            <option value=1993>1993</option>            <option value=1992>1992</option>            <option value=1991>1991</option>            <option value=1990>1990</option>            <option value=1989>1989</option>            <option value=1988>1988</option>            <option value=1987>1987</option>            <option value=1986>1986</option>            <option value=1985>1985</option>            <option value=1984>1984</option>            <option value=1983>1983</option>            <option value=1982>1982</option>            <option value=1981>1981</option>            <option value=1980>1980</option>            <option value=1979>1979</option>            <option value=1978>1978</option>            <option value=1977>1977</option>            <option value=1976>1976</option>        </select>        <div id=privacy>            <input id=privacy_check type=checkbox name=privacy_check />                    <label for=privacy_check>I have read and understood the Terms and Conditions.</label>        </div>        <input type=submit name=ch_access value=Submit />        </form>    </div></body></html>
Validate a form using jQuery
javascript;jquery;validation;form