前提・実現したいこと
WordPress上で、絞り込みが可能なテーブルを作りたいと思っています。
こちらのサイトを参考に、まずは同じ機能を実装してから編集するつもりですが、
JavaScriptが機能していないのか絞り込みが機能しない状態です。
発生している問題・エラーメッセージ
コンソールで確認しましたが、特にエラーメッセージは出ていません。
htmlは問題なく動いているので、セレクトボックスは使えますが、選択をしても絞り込みができません。
該当のソースコード
html
1<select id="pref-select" class="form-control"> 2 <option value="">都道府県で絞り込み</option> 3 <option value="北海道">北海道</option> 4 <option value="青森県">青森県</option> 5 ・・・ 6</select> 7<table class="table table-borderd"> 8 <thead> 9 <tr class="active"> 10 <td>番号</td> 11 <td>都道府県名</td> 12 <td>読み</td> 13 <td>都道府県庁 所在地</td> 14 <td>最大都市</td> 15 <td>地方</td> 16 </tr> 17 </thead> 18 <tbody> 19 <tr> 20 <td>01</td> 21 <td>北海道</td> 22 <td>ほっかいどう</td> 23 <td>札幌市</td> 24 <td>札幌市</td> 25 <td>北海道</td> 26 </tr> 27 <tr> 28 <td>02</td> 29 <td>青森県</td> 30 <td>あおもりけん</td> 31 <td>青森市</td> 32 <td>青森市</td> 33 <td>東北</td> 34 </tr> 35 ・・・ 36 </tbody> 37</table> 38
JavaScript
1<script type="text/javascript"> 2jQuery(function ($) { 3 // セレクトボックスが変更されたら処理をする 4 $('#pref-select').change(function () { 5 6 // 選択した値を取得 7 var select_val = $('#pref-select option:selected').val(); 8 9 // tbodyのtr数回 処理をする 10 $.each($("#pref-table tbody tr"), function (index, element) { 11 12 // 選択した値が空欄だったら、全ての行を表示する為の処理 13 if (select_val == "") { 14 $(element).css("display", "table-row"); 15 return true; // 次のtrへ 16 } 17 18 // 1行をテキストとして取り出し、セレクトボックスで選択した値があるかをチェック 19 var row_text = $(element).text(); 20 21 if (row_text.indexOf(select_val) != -1) { 22 // 見つかった場合は表示する 23 $(element).css("display", "table-row"); 24 } else { 25 // 見つからなかった場合は非表示に 26 $(element).css("display", "none"); 27 } 28 29 }); 30 }); 31}); 32</script>
試したこと
・プラグインの利用(Simple Custom css and JavaScript)
・JavaScript・jQueryの記述方法確認(こちら参考)
→jQuery(function ($) {}で囲まれてるので問題はなさそうに見えました
JavaScriptの知見が浅いため、初歩的な質問になってしまい申し訳ありませんが、ご教示いただけないでしょうか?
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。