2016-12-13 3 views
0

ループ変数iに基づいて特定のnth-of-type要素にアクセスしようとしています。nth-of-typeセレクタとしてのループ変数

for(var i=0;i< data.length; i++){ 
      $(".sm1:nth-of-type(i)").css("background-color","red"); 
     } 

私はそれを正しくやっていますか?間違っている場合、私はそうする方法を知ることができますか?

ありがとうございます。

+0

$( "SM1:n番目の-の型(" + I + ")") – DenseCrab

+0

あなたは – CruelEngine

答えて

1

いいえ、あなたは正しいことをしていません。

文字列にはを指定しています。したがって、jQueryは変数としてではなく、文字としてiを取ります。変数を明示的に使用する必要があります。 + -signを使用して文字列と変数を結合します。

これを試してみてください:$(".sm1:nth-of-type(" + i + ")").css("background-color","red");

+0

ああを@DenseCrabありがとうございました!わかった 。ありがとう:) – CruelEngine

+0

あなたの問題を解決した場合は、回答を受け入れたものとしてマークしてください。 – NikxDa

+0

私は小さな問題に遭遇しました。ループでは、私は0から始まりますが、nth-of-typeは1から番号付けを開始しますか? – CruelEngine

0
for(var i=0;i< data.length; i++){ 
      $(".sm1:nth-of-type({i})").css("background-color","red"); 
     } 

または

for(var i=0;i< data.length; i++){ 
      $(".sm1:nth-of-type("+i+")").css("background-color","red"); 
     } 
+2

コードを投稿して説明するだけではありません。 – NikxDa

+0

このコードスニペットは問題を解決するかもしれませんが、[説明を含む](// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)本当にあなたの投稿の質を向上させるのに役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。あなたのコードに説明的なコメントを詰め込まないようにしてください。これは、コードと説明の両方の可読性を低下させます! – kayess

+0

ありがとう、両方を試してみる – CruelEngine

関連する問題