См. Эту ссылку: http://jsfiddle.net/dASav/ работает. Я использую внутренние данные JSON, код ниже.
var data = { blogsTags: [
{
"tag": "GovernorBentley",
"separation_path": "/blogs/byTag/GovernorBentley.html"
},
{
"tag": "Huntsville",
"separation_path": "/blogs/byTag/Huntsville.html"
},
{
"tag": "Voting Rights",
"separation_path": "/blogs/byTag/Voting Rights.html"
}
]};
Но я хочу, чтобы данные JSON поступали из внешнего курса. ссылка на данные JSON: http://json.virtuecenter.com/json-data/blogs/tags, как я могу это сделать? пожалуйста помогите.
Вы должны использовать jQuery.getJSON(), inorder для извлечения json из внешнего url.
Описание: Загрузка JSON-кодированных данных с сервера с использованием запроса GET HTTP.
Здесь нет ничего общего с Handlebars.
Краткий пример
$.getJSON( "http://json.virtuecenter.com/json-data/blogs/tags", function( json ) {
//Handle it
});
jQuery.getJSON()
- очень рекомендуемый метод в jQuery для извлечения json из внешнего url.
Итак, как с этим работать?
$.getJSON( "http://json.virtuecenter.com/json-data/blogs/tags?callback=?", function( json ) {
io (json); //I have used method call for passing parameter
});
Не забудьте добавить ?callback=?
, это поможет преодолеть CORS (совместное использование ресурсов Cross-Origin)
Тогда вы окончательный код
function io (data) {
var template = document.getElementById("movies-tmp").innerHTML;
var templateCompile = Handlebars.compile(template);
var result = templateCompile(data);
document.body.insertAdjacentHTML("beforeend", result);
}
Вот JSFiddle
Надеюсь ты понимаешь.