Я пытаюсь использовать JSON для получения динамического контента на моей веб-странице, используя javascript. Что-то не так, и у меня есть проблема, чтобы понять, что это может быть. В Firebug я вижу, что JSON-данные получаются так, как должны. При поиске в Firebug в разделе «DOM» URL-адрес, к которому я обращаюсь для страницы (созданная мной страница, а не URL-адрес для JSON-данных), окрашивается в красный цвет (см. Скриншот ниже). Вот мой JavaScript:
$(document).ready(function() {
$('#target').click(function() {
alert("At least I',m reached ");
$.getJSON('http://localhost/timereporting/phpscriptlibrary/get_remaining_hours.php', function(data) {
document.getElementById('errorDiv').innerHTML = "Divtext";
alert("Inside getJason");
});
alert("At least I',m done ");
});
Это значительная часть моего php-файла:
$json_string = "{\"activities\": ";
$json_string = $json_string."[";
for ( $counter = 0; $counter < $num; $counter += 1) {
$json_string = $json_string."[".mysql_result($rows,$counter,'date').", \"".mysql_result($rows,$counter,'activity_id')."\", ".mysql_result($rows,$counter,'hours')."]";
if($counter != ($num-1)){
$json_string = $json_string.", ";
}
}
$json_string = $json_string."]}";
echo $json_string;
Я предполагаю, что "эхо" - это способ "отправить" JSON-данные в javascript?
Одна странная вещь состоит в том, что в firebug JSON-данные представлены двумя различными способами. Если вы посмотрите на приведенные ниже скриншоты, на втором есть даты, например «1988» или аналогичные, а на первом даты более полные, например «2010-12-10». На первом снимке экрана показано, как это должно быть, и вот как я пытаюсь отправить его, и, очевидно, в какой-то момент его получают таким образом.
Почему мой тег div не обновляется с указанием даты или того, что предупреждение внутри $ .getJSON не сработало, только предупреждение до и после?
![alt text](https://i.stack.imgur.com/0VWal.png)
![alt text](https://i.stack.imgur.com/XMpHB.png)
![alt text](https://i.stack.imgur.com/DLeEO.png)