javascript在一个分段变量中运行函数

时间:2014-03-14 13:46:10

标签: javascript jquery json variables concatenation

标题有点令人困惑!抱歉

我有来自Tumblr API的JSON回复以获取博客帖子

   $.getJSON('http://api.tumblr.com/v2/blog/' + blogURL + '.tumblr.com/posts?api_key=' + apiKey + '&limit=' + postsLimit + '&jsonp=?', function (data) {
                 /* Posts Loop */
           $.each(data.response.posts, function (i, post) {

               /* Basic Post Information */
               // Removed to save reading
               /* Photo Post Information */
               if (post.type == 'photo' && post.photos.length == 1) {
                   var postPhoto500 = post.photos[0].alt_sizes[1].url,
                       postPhotoCaption = post.caption;

                   var $photoPostWrap = '<div class="post-wrapper">\
                                            <div class="p-photo post-wrapper-400">\
                                                <a href="' + postPermalink + '">\<img src="' + postPhoto500 + '" alt="' + postPhotoCaption + '"/>\</a>\
                                             <div class="p-details">\
                                                <div class="caption">' + postPhotoCaption + '</div>\
                                                <ul class="p-tags hidden"></ul>\
                                             </div>\
                                          </div>';
                   $('#grid-posts-wrapper').append($photoPostWrap);
               } // PHOTO POST LOOP
           }) // POSTS LOOP
       });

上面的代码使用jQuery data.response.posts.each();中循环我没有问题,$photoPostWrap是一个变量保存帖子div s&amp; ;详细信息,这里是我想要获取当前帖子/索引i的帖子标签并将其添加到

的问题
<ul class="p-tags hidden"></ul>

我尝试在上面的标签中再次使用.each(),这是一个简单的测试

                   if (post.tags) { 
                       $.each(post.tags, function (i, tag) {
                           console.log(tag);
                       })
                   }

工作正常,但我仍然需要它们在.p-tags hidden列表

所以目前我仍然坚持这一点,这就是我的尝试:

将函数定义为新变量,我必须传递完整的JSON对象函数(问题)

在这里写文字的方法?只是一个想法

那我怎么解决这个问题?

1 个答案:

答案 0 :(得分:1)

尝试使用 .append()

  

将参数指定的内容插入每个元素的末尾   在匹配元素集合中。

if (post.tags) { 
    $.each(post.tags, function (i, tag) {
        $('.p-tags.hidden').append(tag);
    });
}