jQuery Validationを使用してフォームの値のエラーチェックをしています。
私はその中でもある特定のチェックボックスが押されている場合のみテキストエリアの値の入力チェックをさらに行いたいです。
逆もしかりです。
イメージ画像は上記です。
チェックボックスは最低どれかひとつを選択する必要があります。
この場合は下記のようなコードで3つのチェックボックスの必須処理ができます。
------------js----------------
rules: {
チェックボックス:
required: true
}
message: {
チェックボックス:
required: '必須項目です。'
}
----------HTML----------------
<div> <input type="checkbox" name="チェックボックス" value="りんご"/> </div> <div> <input type="checkbox" name="チェックボックス" value="みかん"/> </div> <div> <input type="checkbox" name="チェックボックス" value="その他"/> <input type="text" name="チェックボックス" value="テキストエリア欄" /> </div>しかし私はこれに加えて「その他」が押された場合、テキストエリアも入力しなければならない。
という条件を追加したいです。
逆に「その他テキストエリア」入力のみ場合、"テキストエリアに値が入力されています。「その他」を選択してください。" という必須項目とは別のメッセージを出力したいです。
######################################################
・試したこと。
-------------------html---------------
テキストエリアのnameを「別名」に変更して処理を追加する。
------------js----------------
rules: {
チェックボックス:
required: true
}
別名:
required: function() {
return 別名.(':checked')
}
message: {
チェックボックス:
required: 'テキストエリアに値が入力されています。「その他」を選択してください。'
}
のようなことを試しましたがその場合、フォームの値が次の画面へ引き継げない問題が発生します。
「試したこと」よりも、上記質問内容の改善方法がわかりましたら教えて欲しいです。
よろしくお願いします。
試したこと問題については参考までにお願いいたします。
あなたの回答
tips
プレビュー