質問

JSONデータを使用した作業の最初の調査。ただし、jQueryの使用経験は少しあります。

このURL(tumblr api)に投稿しています:jyoseph.com/api/read/json

私がやろうとしているのは、返されるjsonを出力することです。私がこれまでに持っているもの:

$(document).ready(function(){ 

$.getJSON("http://jyoseph.com/api/read/json?callback=?", 
  function(data) { 
    //console.log(data); 
    console.log(data.posts);         

      $.each(data.posts, function(i,posts){ 
        var id = this.id; 
        var type = this.type; 
        var date = this.date; 
        var url = this.url; 
        var photo500 = this.photo-url-500; 

        $('ul').append('<li> ' +id+ ' - ' +type+ ' - ' +date+ ' - ' +url+ ' - ' +photo500+ ' - ' + ' </li>'); 
      }); 

  }); 

});

スクリプト全体のjsbin投稿を参照してください: http://jsbin.com/utaju/edit

tumblrの一部のキーには&quot;-&quot;があります。それらの中にハイフンがあり、それが問題を引き起こしているようです。ご覧のように、「photo-url-500」はまたは別の「写真キャプション」スクリプトが破損し、NaNが出力されています。

キー名にハイフンが含まれていることに問題はありますか?それとも、これについてすべて間違っていますか?

役に立ちましたか?

解決

名前にダッシュが含まれている場合は、別の方法でアクセスする必要があります。 var photo500 = this.photo-url-500; var photo500 = this [&quot; photo-url-500&quot;]; に変更します。

他のヒント

各反復内に追加しないことをお勧めします。文字列に追加するか、配列にプッシュして、イテレータが終了した後に1回追加する方が適切です。 DOMへの追加は高価です。

ブラケット表記を使用してメンバーにアクセスします

var photo500 = this['photo-url-500']; 
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top