2012-03-20 4 views
2

Я использую немного JSON для анализа информации из страниц facebook для отображения на моем сайте, который работает почти отлично! Вся информация втягивается, но я теряю разрывы строк в html (что я хотел бы сохранить).Facebook API заменяет новую строку в JSON

Я могу видеть через графа апи, что новые строки отображаются в виде \n, поэтому самый простой способ я могу думать, делать это с помощью JQuery, чтобы найти \n и заменить его <br /> я имел взгляд вокруг, но просто найти и заменить метод, такой как:

$(span#about_" + index).html(this.html().replace('\n','<br />')); 

Однако это не работает, потому что \ п теги не передаются в HTML.

Так что мне интересно, знает ли кто, как я могу это достичь? Любая помощь будет принята с благодарностью!

Мой первоначальный запрос JSON ниже:

$.each(json, function(index, item) { 
       $(".facebook span#likes_" + index).html("<a href='" + item.link + "' alt='" + item.name + " on Facebook'><ul><li>" + item.likes + "</li></ul><h4>Facebook Fans</h4></a>"); 
       $("span#about_" + index).html("<p>" + item.description + "</p>"); 
}); 

Большое спасибо заранее, MB

+0

Могу ли я увидеть, как выглядит результат описания? – Ohgodwhy

+0

Вы имеете в виду '/ n' или' \ n'? –

+0

с facebook или внутри моего html? Эта информация получена из facebook: http://pastie.org/3636417 – Michael

ответ

2

Можете ли вы сделать item.description.replace(/\n/g, '<br />')?

Кажется, что метод замены заменит только первое вхождение. Если вы используете регулярное выражение, вы можете сказать, что оно заменяет глобально.

$.each(json, function(index, item) { 
    $(".facebook span#likes_" + index).html("<a href='" + item.link + 
     "' alt='" + item.name + " on Facebook'><ul><li>" + item.likes + 
     "</li></ul><h4>Facebook Fans</h4></a>"); 
    $("span#about_" + index).html("<p>" + 
     item.description.replace(/\n/g, '<br />') + "</p>"); 
}); 
+0

Will, которые идут в петле, например: '$ .each (JSON, функция (индекс, элемент) { \t \t \t \t \t $ (" facebook пядь # likes_" + индекс) .html ("

Facebook Fans

"); \t \t \t \t \t $ ("диапазон # about_" + индекс) .html ("

"+ item.description +"

"); \t \t \t \t \t item.description.replace (/ \ п/g, '
'); }); ' Извините за вопрос n00b, я нахожу свои ноги с jQuery! – Michael

+1

Нет проблем - думаю, вы можете заменить item.description тем, что я разместил, если я правильно понял ваш вопрос и код :) –

+0

ДА! Большое спасибо amigo, вы сделали мой сайт более красивым ха-ха. – Michael

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