2017-11-22 8 views
1
$(document).ready(function(){ 
    $(".item-title a").each(function(index) { 
     var yaz = $(this).attr("href"); 
     $.ajax({ 
      url: 'https://api-metrica.yandex.com/analytics/v3/data/ga?end-date=today&ids=ga%3A35416355&dimensions=ga:pagePath&metrics=ga:pageviews&filters=ga:pagePath=='+yaz+'&start-date=2015-10-25&oauth_token=AQAAAAAVs-uLAASpEAf-MmJK_kHgpU9Fwv8WArM', 
      type: 'get', 
      dataType: "jsonp", 
      success: function(data){ 
       $(this).append(data.rows); 
      } 
     }); 
    }); 
}); 

コンソール:キャッチされない例外TypeError:問題は何"未定義のプロパティを読み取ることができません 'createDocumentFragment'"

未定義の 'createDocumentFragment' プロパティを読み取ることができませんか?
お願いします。

+0

これは問題ですが、2つの等しいを持つ 'pagePath =='を持つことを意味しましたか? – Intervalia

+0

@Intervaliaこれはmetrica urlパラメータです –

答えて

1

これはsuccessコールバックのthisコンテキストのためです。 コールバック内のjQueryオブジェクトを期待通りにポイントしません。現在のコンテキストを参照します。

success: function(data){ 
    $(this).append(data.rows);; 
} 

successthisのコンテキストを保存して再利用します。

代わりにbindメソッドを使用してコンテキストをロックすることができます。

$.ajax({ 
    ... 
    success: function(data){ 
     $(this).append(data.rows);; 
    }.bind(this) 
    ... 
}); 
+0

私にそれを打つ!!彼は変数yazを '$(yaz).append(data.rows);に入れることもできます。 –

関連する問題