いろいろネットから解決策を探してみましたが、見当たらなかったのでどうかよろしくお願いいたします。現在ホームページを作成しているのですが、検索結果から地域名をクリックすると(添付画像参照)クリックした地域のみ表示されるようにしたいです。下記URLを参考に取り込んでみましたが、1つの地域まではちゃんと絞込みされて表示されるのですが2個目を選択すると全ての要素に「display: none;」が適用されてしまい表示されなくなってしまいます。
http://jsdo.it/carl_marie/jquery_hide_rows
複数の地域を選択した場合でもちゃんと表示されるようにするためには、どのような記述にしたらよいのかご教授よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
ざっと書きました
チェックボックスのvalueと同じclassを持つdiv(class=areas)の表示をきりかえます
<style>
.hide{display:none;}
</style>
<script src="js/jquery.js"></script>
<script>
$(function(){
$('[name=x]').on('change',function(){
var flg=$(this).prop('checked');
if($(this).val()=="all"){
if(flg) $('[name=x]').not('[value=all]').prop('checked',false);
$('.areas').toggleClass('hide',!flg);
}else{
if(flg) $('[name=x][value=all]').prop('checked',false);
$('[name=x]').not('[value=all]').each(function(){
var flg=$(this).prop('checked');
$('.areas').filter('.'+$(this).val()).toggleClass('hide',!flg);
});
}
}).change();
});
</script>
<input type="checkbox" name="x" value="all">絞り込まない
<input type="checkbox" name="x" value="aaa">aaa
<input type="checkbox" name="x" value="bbb">bbb
<input type="checkbox" name="x" value="ccc">ccc
<hr>
<div class="areas aaa">aaa</div>
<div class="areas bbb">bbb</div>
<div class="areas ccc">ccc</div>
yambejp様
御返事ありがとうございます。ご回答内容で試してみましたが、自分の環境ではうまく表示させることができませんでした。新しくhtmlファイルを作成して上記内容で試してみたところ、ちゃんとチェックボックスにチェックをいれた要素だけ表示されていたので原因は自分の説明不足か環境ではないかと思っています。もしよろしければ該当ページを直接ご確認いただけないでしょうか?直接URLを載せるのは少し抵抗がありますので、URLを記載したtxtファイルを下記にアップしましたので気が向きましたらよろしくお願いいたします。
http://xfs.jp/Z2hqA8
No.2
- 回答日時:
ごめんなさい、私の理解が間違っていなければ
ご提示の参照先は「できている例」ですよね?
その例の通り、丸パクリでやればよいのではないですか?
それがうまくいないのであれば、うまくいかないソースを提示してほしいというのが
前回の回答なのですが・・・
No.1
- 回答日時:
チェックボックスのデータをサーバーにおくって絞込をするか
送られてきたデータをチェックボックスを元に非表示にするか
のどちらかでしょうけど、一般的には前者
後者でやるなら、それなりのソースを提示しないことには回答のしようがありません
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Chrome(クローム) Chromeでgooglemap検索等結果が他国になってしまう 1 2022/10/05 12:18
- JavaScript jsで診断コンテンツのページ内切り替えについて 1 2023/04/14 17:31
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/06/10 11:06
- Excel(エクセル) IF 関数で「〇〇 という文字を含む場合」の分岐処理で表示された数字はSUMで数字集計できますか? 3 2022/08/02 16:29
- バックアップ パソコンからDVDへコピー 5 2022/08/18 14:02
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2022/04/01 12:11
- 統計学 アンケート調査のデータ比較をする際の統計分析方法の選択に迷っています 5 2022/04/15 01:05
- JavaScript jQueryで同じクラス名のものを別物として扱いたい 1 2022/06/17 14:14
- その他(ブラウザ) bingチャットの内容(縦長)をスクリーンショットで保存する方法 3 2023/02/28 02:13
- Firefox(ファイヤーフォックス) Firefoxのグーグル検索で表示される現在地を修正したい!!! 1 2022/05/17 10:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
チェックボックスのON/OFFでVal...
-
【jsp/Java】チェックボックス...
-
チェックボックスとラジオボタ...
-
複数のチェックボックス項目が...
-
contact-form7のプラグインでチ...
-
配列のチェックボックスをjavas...
-
チェックボックスのON/OFFに応...
-
チェックボックスに全てチェッ...
-
チェックボックスの設定
-
正規表現で複数マッチ条件で悩...
-
onchangeイベントを強制的に発...
-
プルダウン 項目が多いので先頭...
-
TextBoxに半角数字以外を入れた...
-
return trueとreturn falseの用...
-
ラジオボタンのチェックが外れ...
-
【jQuery】input nameの文字列...
-
<input>の選択肢をプルダウンメ...
-
特定<table>内の<td>の色を変える
-
<JavaScript>tableタグを入力不...
-
submitした値を返したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【jsp/Java】チェックボックス...
-
チェックボックスのON/OFFでVal...
-
checkboxをクリックしてリロー...
-
チェックボックスに全てチェッ...
-
JSP内で可変するチェックボック...
-
確認ページからフォームページ...
-
チェックボックスのON/OFFに応...
-
Objective-Cでチェックボックス...
-
EclipseでSpringを使用し、テー...
-
チェックボックスの設定
-
スクリプト内でチェックボック...
-
チェックボックスで合計値を計...
-
背景色を変えて未入力チェック...
-
チェックボックスのグループ化...
-
オフになっているチェックボッ...
-
checkboxの選択数制限と排他処...
-
複数のチェックボックス項目が...
-
Nameは配列で、チェックされた...
-
jquery 診断コンテンツにチェッ...
-
チェックボックスでor検索
おすすめ情報
<ul>
<li><a href=""><label><input type="checkbox" checkd id="area1"/>久茂地</label></a></li>(以下同じように<li>~と続きます。)
</ul>
<a class="area1">
<img data-src="~">
<p class="num">[ 那覇市 / 久茂地 ]</p>
<p class="shop-title">野菜がたっぷり入ったおいしいサンドイッチが食べれるサブウェイ。パンの種類をはじめ...</p>
</a>(以下<a class="area2">~と続きます。)
jqueryについては文字数制限にかかってしまったため、お手数ですが下記URLを確認いただければ助かります。
http://jsdo.it/carl_marie/jquery_hide_rows
不足情報があればご指摘くださいませ。以上よろしくお願いいたします。
申し訳ございません。違う解釈をしておりました。
参照先は確かに「できている例」ではあるのですが、クラスを足していって絞込みをするというような形になっています。クラスを足していくのではなく、それぞれ異なるクラス1つを割り当てて、複数選択可能という形にしたいです。例えば、久茂地(kumozi)と三原(mihara)という地域を選択したい場合、参照先の例では実現できないようです。
yambejp様
私の環境が原因でした。回答内容の通りでうまく動作しました。本当にありがとうございます。