2017-07-12 12 views
0

私はforループを使用して天気APIのデータを反復処理しています。そのforループの中で、私は、毎晩、星座の適性に関する評価を割り当てます(var totalRanking)。次に、day0,day1などのIDを持つ一連のdivを更新します。ここで問題のコードブロックです(これらのdivが動的に生成されている、それが重要な場合。):コメントに示すようにjQuery appendはforループの最初のパスで失敗しますが(他のものには成功します)

var dayRankLine = $("<div>"); 
var rating = $("<span class=rating>"); // happens 
rating.text(Math.round(totalRanking * 100) + "%"); // happens 
dayRankLine.html("Score: "); // happens 
dayRankLine.append(rating); // doesn't happen on 0. (does on others) 
$("#day" + i).after(dayRankLine); // happens (even on 0) 

、最初のdiv、#day0は、取得したテキストScore:、ない数です。残りの部門は期待どおりに働いています。後のコードブロックは、0日目にratingを使用して別のDOM要素を更新し、期待どおりに動作し、正しい値が入力されていることを示します。

ループを通した最初の反復とは何が違うのですか、追加については何が違うのですか?そのパスはそのパスでのみ失敗するでしょうか?

+0

実例/フィドルがありますか?あなたのコードにはforループはありません。 – realbart

答えて

0

Ohhh nevermind。私が言ったように、私は低いコードブロックでratingを使用していました。それは、それをday0から "盗む"ことでした。 rating.clone()と問題が解決しました。

関連する問題