Я пытаюсь отобразить конкретные данные json в форме Пули. Каждый глава данные в <li>
, каждый название в <p>
и сделать эти названия как link
. Наконец, рассмотрим на индекс щелкнули название отображения связанных содержания во втором <div>
. У меня уже есть часть кода ниже (пока не работает).JSON - Показать данные в соответствии с индексом json
Html:
<div id="page1">
<ul id="courses"></ul>
</div>
<div id="page2">
<p id="content"></p>
</div>
JS код:
var jsonString = '[{"chapter":"General","title":"News forum","content":"Text1"},
{"chapter":"CHAPTER 1","title":"1.1 Introduction","content":"Text2"},
{"chapter":"CHAPTER 1","title":"1.2 Main Idea","content":"Text3"},
{"chapter":"CHAPTER 2","title":"2.1 Architecture","content":"Text4"},
{"chapter":"CHAPTER 3","title":"3.1 Liter.overview","content":"Text5"}]';
var myData = JSON.parse(jsonString);
$(document).ready(function() {
var $clist = $('#courses');
for(var i in myData) {
$('<li><h3>' +this.[i].chapter+ '</h3><p><a href="#page2" onclick="dContent(i)">' +this.title+ '</a></p></li>').appendTo($clist);
}
function dContent() {
var $ccontent = $('#content');
$(this.[i].content).appendTo($ccontent);
}
});
Ожидаемый результат:
- General
News forum // onclick display 'Text1' in <p id="content">
- CHAPTER 1
1.1 Introduction // onclick display 'Text2' in <p id="content">
1.2 Main Idea // onclick display 'Text3' in <p id="content">
- CHAPTER 2
2.1 Architecture // onclick display 'Text4' in <p id="content">
- CHAPTER 3
3.1 Liter.overview // onclick display 'Text5' in <p id="content">
Любая помощь будет оценена.
ОБНОВЛЕНИЕ: Вот проект JSFIDDLE.
Вам нужно будет захватить 'i' в своей собственной сфере в цикле, используйте функцию генератора или хранить данные в другом месте (например, _data - атрибут * _) для создания желаемых слушателей onclick. –
Что именно не работает? –
@FelixKling ничего не печатает для результата. Посмотрите на версию ** jsfiddle ** (ссылка выше). – Dozent