質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1160閲覧

JQueryで絞り込み検索

Mituzu417

総合スコア3

JSP

JSP(Java Server Pages)とは、ウェブアプリケーションの表示レイヤーに使われるサーバーサイドの技術のことです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/07/07 08:28

前提・実現したいこと

Jqueryを用いて絞り込みの検索ができるようにしたいのですが
Aのfunction と Bのfunctionを同時に満たす
という記法がわからない状況です

下記のソースコードで実現したいのは
セレクトボックスで企業名を選択して絞り込む
radioボタンで絞り込む
という二つの動作に加えて
セレクトボックス、ラジオボタン のどちらもを選択した際に
どちらも満たすものだけを表示したいと思っています

知識のご協力お願いいたします

該当のソースコード

Html

1<div id="corp-search"> 2 <form method="get" action=""> 3 4 <select name="company" id="corp-select" class="form-control" 5 style="width: 20%"> 6 <option value="">企業を選択してください</option> 7 <c:forEach items="${corpList }" var="corp"> 8 <option class="corpN" value="${corp.corpName }"> 9 <c:out value="${corp.corpName }" /></option> 10 </c:forEach> 11 12 </select> 13 <div id = "active-select"> 14 <input type="radio" name="search" value="">ALL 15 <input type="radio" name="search" value="アクティブ">アクティブ 16 <input type="radio" name="search" value="休止中">休止中 17 </div> 18 </form> 19 </div>

JavaScript

1$(function () { 2 $('#corp-select').on('change',function () { 3 var select_val = $("#corp-select option:selected").val(); 4 5 $.each($("#corp-table tbody tr"), function(index, element) { 6 if (select_val == "") { 7 $(element).css("display", "table-row"); 8 return true; 9 } 10 var row_text = $(element).text(); 11 12 if (row_text.indexOf(select_val) != -1) { 13 $(element).css("display", "table-row"); 14 } else { 15 $(element).css("display", "none"); 16 } 17 18 }); 19 }); 20 $('#active-select').on('change',function () { 21 22 var select_active = $(" #active-select [name='search']:checked").val(); 23 $.each($("#corp-table tbody tr"), function(index, element) { 24 if (select_active == "") { 25 $(element).css("display", "table-row"); 26 return true; 27 } 28 var row_text = $(element).text(); 29 30 if (row_text.indexOf(select_active) != -1) { 31 $(element).css("display", "table-row"); 32 }else { 33 $(element).css("display", "none"); 34 } 35 36 }); 37 }); 38});

補足情報(FW/ツールのバージョンなど)

使用しているのはEclipseです

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2021/07/07 08:39

サーバーサイドの処理は再現できないので、HTMLとして例示下さい 結局何をやりたいのかもわかりません
guest

回答1

0

ベストアンサー

それぞれのchangeイベントが発動したときにselect_activeとselect_valの中身を両者のfunctionで検証する必要があると思います
具体的には以下のような感じです

javascript

1 $('#corp-select').on('change',function () { 2 var select_val = $("#corp-select option:selected").val(); 3 var select_active = $(" #active-select [name='search']:checked").val(); 4 5 $.each($("#corp-table tbody tr"), function(index, element) { 6 if (select_val == "" && select_active == "") { 7 $(element).css("display", "table-row"); 8 return true; 9 } 10 var row_text = $(element).text(); 11 12 if (row_text.indexOf(select_val) != -1 || row_text.indexOf(select_active) != -1) { 13 $(element).css("display", "table-row"); 14 } else { 15 $(element).css("display", "none"); 16 } 17 18 }); 19 });

投稿2021/07/09 09:12

編集2021/07/09 09:14
heikyo

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問