前提・実現したいこと
お世話になっております。
現在、アンケートサイトを作成しています。
複数選択可能なチェックボックスを作成し、
事前に設定しているキーワードと合致した場合メッセージを表示したいです。
発生している問題・エラーメッセージ
一つの項目のみ選択→キーワードと比較し判定は出来ています。
複数選択時の判定方法がわかりません。
該当のソースコード
javascript
1// ひらがな 2var msg = ""; 3var kana = input.kana ? input.kana : ""; 4if (kana == "あ") { 5 msg = "あです"; 6} else if (kana == "い") { 7 msg = "いです"; 8} else if (kana == "う") { 9 msg = "うです"; 10} else if (kana == "え") { 11 msg = "えです"; 12} else if (kana == "お") { 13 msg = "おです"; 14} 15
HTML
1<!DOCTYPE html> 2<html lang="ja"> 3 4<body> 5 <form id="kana_form"> 6 <table width="640" border="0" cellspacing="1" cellpadding="4"> 7 <tr class="table_item"> 8 <td><span class="item">ひらがな</span></td> 9 <td><span> 10 <input type="checkbox" name="kana" id="kana_1" value="あ"><LABEL>あ</LABEL><br> 11 <input type="checkbox" name="kana" id="kana_2" value="い"><LABEL>い</LABEL><br> 12 <input type="checkbox" name="kana" id="kana_3" value="う"><LABEL>う</LABEL><br> 13 <input type="checkbox" name="kana" id="kana_4" value="え"><LABEL>え</LABEL><br> 14 <input type="checkbox" name="kana" id="kana_5" value="お"><LABEL>お</LABEL><br> 15 </span></td> 16 </tr> 17 </table> 18 </form> 19</body> 20</html>
試したこと
①選択された項目のvalueを配列に入れる
②キーワードを配列にいれる
③配列同士をforで回し、ifで比較
④trueならばmsgにキーワードを入れる
このようにすると、比較はうまくいきました。
しかし、④の部分で、項目ごとに違うメッセージを表示させたいため、
その部分の実装ができませんでした。
補足情報(FW/ツールのバージョンなど)
上記のソースは、例として作成しております。
実際のソースは業務で使用しているため開示できません。
また、実際のソースではチェックボックスは20個あります。
以上、宜しくお願い致します。