JavaScript の記述を簡潔にしたい
よくあるお問い合わせフォームの入力時のバリデーション機能を作っています。
以下のような _validate
メソッドを作成したのですが
@$example.parent('dd').prev('dt').addClass('form-error')
が
何度も書かれてしまっているのを、もっと簡潔に記述したいのですが
どうすればいいでしょうか。よろしくお願いします。
_validate: ->
errorMessage = ''
unless @$name.val()
errorMessage += '<span class="form-alert-text">・お名前を入力してください</span><br>'
@$name.parent('dd').prev('dt').addClass('form-error')
unless @$email.val()
errorMessage += '<span class="form-alert-text">・メールアドレスを入力してください</span><br>'
@$email.parent('dd').prev('dt').addClass('form-error')
else
unless @$email.val().match(/.+@.+\..+/g)
errorMessage += '<span class="form-alert-text">・メールアドレスが不正な形式です</span><br>'
@$email.parent('dd').prev('dt').addClass('form-error')
unless @$email_confirm.val()
errorMessage += '<span class="form-alert-text">・メールアドレス(確認)を入力してください</span><br>'
@$email_confirm.parent('dd').prev('dt').addClass('form-error')
else
if @$email.val() != @$email_confirm.val()
errorMessage += '<span class="form-alert-text">・メールアドレスと内容が異なります</span><br>'
@$email_confirm.parent('dd').prev('dt').addClass('form-error')
unless @$tel.val()
errorMessage += '<span class="form-alert-text">・お電話番号を入力してください</span><br>'
@$tel.parent('dd').prev('dt').addClass('form-error')
else
unless @$tel.val().match(/^[0-9-]/)
errorMessage += '<span class="form-alert-text">・お電話番号が不正な形式です</span><br>'
@$tel.parent('dd').prev('dt').addClass('form-error')
errorMessage