2014-11-30 3 views
0

У меня есть блог blogger.com, и мне удалось создать скрипт, который получает данные из блога - им не очень-то нравится js/json, поэтому я иду на это немного слепо ;-)Переместить некоторые данные JSON в уникальные Divs

Id, как выход, чтобы быть в 2 DIVS, которые являются уникальными с почтовым идентификатором и содержанием:

Это сценарий:

<html> 
    <head> 
    <title>Test</title> 
    </head> 
    <body> 

<script type="text/javascript"> 
    function posts(json) { 
     // Get five recent posts 
     for (var i = 0; i < 2; i++) 
     { 
     var posturl; 
     // Get rel=alternate for truly post url 
     for (var j=0; j < json.feed.entry[i].link.length; j++) 
     { 
      if (json.feed.entry[i].link[j].rel == 'alternate') 
      { 
      posturl = json.feed.entry[i].link[j].href; 
      break; 
      } 
     } 
     // if the Blogger-feed is set to FULL, then the content is in the content-field 
     // if the Blogger-feed is set to SHORT, then the content is in the summary-field 
     if ("content" in json.feed.entry[i]) { 
      var postcontent = json.feed.entry[i].content.$t;} 
     else 
     if ("summary" in json.feed.entry[i]) { 
      var postcontent = json.feed.entry[i].summary.$t;} 
     else var postcontent = ""; 
     // strip off all html-tags 
     var re = /<\S[^>]*>/g; 
     postcontent = postcontent.replace(re, ""); 
     // reduce postcontent to 200 characters 
     if (postcontent.length > 200) postcontent = postcontent.substring(0,200); 
     // Get posts title 
     document.write("Post Id = "+json.feed.entry[i].id.$t); 
     document.write('<br/>'); 
     document.write("Post content = "+postcontent); 
     document.write('<br/><br/>'); 
     } 
     }  
</script> 

<script src="http://ironheartuk123.blogspot.com/feeds/posts/default?alt=json-in-script&callback=posts"></script> 

    </body> 
</html> 

Когда я загрузить страницу в браузер Я получаю это на экране:

Post Id = tag:blogger.com,1999:blog-5655651846573938667.post-5882120439717312684 
Post content = Test post 2 

Post Id = tag:blogger.com,1999:blog-5655651846573938667.post-8794205203420774123 
Post content = Test post 1 

И это то, что я бы предпочел, чтобы выход был!

<div id="5882120439717312684">Test post 2</div> 

<div id="8794205203420774123">Test post 1</div> 

Как только я сделаю это, я смогу переместить Divs в правильное положение на странице. Я думаю, что это легкий бит ;-)

Любая помощь очень ценится !!

+0

Это не очень хорошая идея, чтобы иметь идентификаторы начинаются с цифр. – hjpotter92

+0

True - им рады называть их id = "post-5882120439717312684" и т. Д. – MarkL

ответ

0

Использование JQuery:

var re = /post-\d+/; 
var postId = re.exec(json.feed.entry[i].id.$t); 
$("#" + postId[0]).html(postcontent); 
+0

Спасибо Michal, но не знаете, как это реализовать? – MarkL

+0

Я отредактировал свой ответ и показал, как извлечь postId (имейте в виду, что вы должны добавить обработку ошибок). –

+0

Спасибо - это было полезно ;-) – MarkL

Смежные вопросы