0

jquery validate を使用してフォームを送信前に検証していますが、送信前に選択ボックスの値を検証するにはどうすればよいですか?

上記の例では、現在選択されている要素の値が == 0 の場合、検証を失敗させたいと考えています。

HTML

<form action="/foo" id="register_form" method="post">
  <select id="city_select" name="city_id">
    <option value="0">Select City</option>
    <option value="4">New York</option>
    <option value="24">Chicago</option>
    <option value="25">Washington</option>
   </select>

    <input class="" id="username" name="username" type="text" /><br/>
    <input class="" id="email" name="email" placeholder="Email" type="text" /><br/>
    <input class="" id="password1" name="password1" type="password" />
    <input class="" id="password2" name="password2" type="password" /><br/>

    <input type="checkbox" value="1" name="terms_of_use" id="terms_of_use">
</form>

Jquery/検証

$('#register_form').validate({
    onfocusout: function (element, event) {

},
    rules : {
        username: {
            required: true
        },
        email: {
            required: true,
            email: true
        },
        terms_of_use: {
            required: true
        },
        password1: {
            required: true,
                            rangelength: [5, 50]
        },
        password2: {
            required: true,
            equalTo: '#password1'
        }
    },
    messages: {
        username: {
            required: I18n.t('validation.register.username')
        },
        city_id: {
            required: I18n.t('validation.register.city')
        },
        email: {
            required: I18n.t('validation.register.email'),
            email: I18n.t('validation.register.email_f')
        },
        terms_of_use: {
            required: I18n.t('validation.register.tos')
        },
        password1: {
            required: I18n.t('validation.register.password1'),
            rangelength: I18n.t('validation.register.password_l')
        },
        password2: {
            required: I18n.t('validation.register.password2'),
            equalTo: I18n.t('validation.register.password_match')
        }
    }
});
4

1 に答える 1