Qrara
@Qrara (Qrara)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

li要素の順番と中身のテキストをconsoleに表示させたい

解決したいこと

li要素の順番と中身のテキストをconsoleに表示させたい

例)
2時間格闘中です。。
ただいまJavaScriptの勉強をしているのですが、ネットで調べても分からなかったので質問させてください。

発生している問題・エラー

出ているエラーメッセージを入力

Uncaught SyntaxError: missing ) after argument list (at index.html:142:5)
引数リストの後?良く分かりませんでした。

または、問題・エラーが起きている画像をここにドラッグアンドドロップ

該当するソースコード

<div class="u-mbm btn" id="jsi-q12">練習問題</div>
<ul class="u-mbm lists" id="jsi-q13">
  <li>コメント1</li>
  <li>コメント2</li>
  <li>コメント3</li>
</ul>


<script defer>
window.addEventListener( 'load', function(){
  $("#jsi-q12").on('click', function() {
    $("#jsi-q13").find("li").each(function(){
      let num = $(this).index();
      $("#jsi-q13").find("li").eq(num);

      let length = $('li').length;
      for (let i=0; i<length; i++) {
        let txt = $('li').eq(i).text();

        console.log(num);
        console.log(txt);
      }
    }
  });
}, false);

自分で試したこと

eqを使おうとすると複雑になってしまって全然分からなくなってしまいました。
自分なりに調べてコードを書いてみたので、そもそもこのコードの書き方があっているの分かりません。
何卒宜しくお願い致します。

0

2Answer

やりたいことができるかは別として以下で通るようになるかと。
エラーメッセージにある通り142行目に閉じカッコがたりません。

window.addEventListener( 'load', function(){
  $("#jsi-q12").on('click', function() {
    $("#jsi-q13").find("li").each(function(){
      let num = $(this).index();
      $("#jsi-q13").find("li").eq(num);

      let length = $('li').length;
      for (let i=0; i<length; i++) {
        let txt = $('li').eq(i).text();

        console.log(num);
        console.log(txt);
      }
-   }
+   });
  });
}, false);

引数リストについては$("#jsi-q13").find("li").eachの引数の閉じカッコがありませんって示していただけです。
空のfunctionで書くとわかりやすいかと思います。今回のコードだと最後のカッコが足りませんでした。

$("#jsi-q13").find("li").each(function(){})
1Like

Comments

  1. @Qrara

    Questioner

    エラーが治りました!
    あと少しいじれば上手くできそうです!
    ありがとうございました!!

こういうことでしょうか。

document.querySelectorAll('#jsi-q13 li').
  forEach((element, index) => console.log(index, element.textContent));
0 'コメント1'
1 'コメント2'
2 'コメント3'
1Like

Comments

  1. @Qrara

    Questioner

    こんなに簡単に書く方法があるんですね!
    まさにこれです!ありがとうございます!

Your answer might help someone💌