プロが教える店舗&オフィスのセキュリティ対策術

特定の要素(今回は<li>)の数をカウントしたくて以下のように書きました。

<ul class="hoge">
 <li>あああ</li>
 <li></li>
 <li>いいい</li>
 <li></li>
</ul>
<script>
 $(function(){var hoge=$("ul.hoge li").length;
 $(".echo").text(hoge)});
</script>
<li>は、全部で<span class="echo"></span>個です。

これで
「<li>は、全部で4個です。」
と表示されてうまく行ったので小躍りして喜んでいたのですが、今度は少しひねった要望が出て
「空っぽの<li>は数えないようにしたい、つまり何か文字列が入っている<li>だけをカウントしてほしい。」と言われてしまい、現在泣いています。

理想とする吐き出され方は、以下です。

「要素の入っている<li>は、全部で2個です。」

調べても調べてもそんなことができる読み物が見つけられずに泣き続けているのですが、どなたかお教えいただけませんでしょうか( ノД`)シクシク…

A 回答 (2件)

jQueryで良いですね?



$(function(){
var hoge=$("ul.hoge li:not(:empty)").length;
$(".echo").text(hoge);
});
    • good
    • 1
この回答へのお礼

猛烈にありがとうございました!!!
百萬点満点でございますm(_ _)m!!!

お礼日時:2021/12/02 20:33

var 数 = $(対象).filter((i,e)=>!!e.textContent).length;



参考)
https://api.jquery.com/filter/
    • good
    • 0
この回答へのお礼

大変参考になりました!ありがとうございます!

お礼日時:2021/12/02 20:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!