Я ищу, чтобы поместить div на мой сайт, где контент изменяется на основе какой ссылки clicked
без обновления. Содержимое, которое нужно добавить, происходит от MySQL database
и помещено в JSON. Моя проблема заключается в том, что я не могу получить данные JSON для отображения при нажатии ссылок.Создание динамического содержимого div с помощью jquery
Вот сценарий, я использую:
$(document).ready(function() {
$.getJSON("jsondata.php",rightSideData);
function rightSideData(data) {
for(var i=0; i<data.length;i++) {
$("#changetext"+data[i].id).click(function() {
$("#rightside").html("<h1>" + data[i].title + "</h1><p />" + data[i].content);
});
}
}
});
Это div
элемент, который должен измениться:
<div class='rightside' id='rightside'>Test</div>
Ссылки построены таким образом:
echo "<a id='changetext" . $row['id'] . "'> ";
echo "<div class='tile'>";
echo "<h2>Tile</h2></div></a>";
Я тестировал различные элементы, и они отлично работают (изменение divs cont с жестко закодированными данными, отображающими данные JSON), но мне трудно понять, почему комбинированная вещь не работает.
Хотя ваш обновленный код понятнее, но он показывает только заголовок. Поскольку я так новичок в этом, я не могу найти ошибку ... –
@Freezzo - Это мое плохое, с большинством методов jQuery вы можете добавить несколько элементов, таких как '.append (elem1, elem2, elem3)', но 'html()' принимает только один элемент, который кажется, поэтому мы должны добавить два элемента вместе, чтобы создать один элемент, отредактировав ответ. – adeneo