То, что вы цитировали, работает: http://jsbin.com/iwumu4 Пробовал в IE6, IE7, IE8, Chrome 9, Firefox 3.6, Safari 5 и Opera 11 в Windows;и Chrome 9, Firefox 3.6 и Opera 11 в Linux.
Это говорит о том, что проблема кроется в другом месте кода.Лучше всего использовать отладчик.Chrome, Safari, Opera и IE8 имеют встроенные отладчики.Вы можете получить Firebug для Firefox, а VS.Net будет отлаживать JavaScript на IE6 и IE7.В отладчике сначала посмотрите на консоль, чтобы увидеть, есть ли сообщения об ошибках.Если нет, установите точку останова на вызове $.getJSON
, а также на alert
и проверьте данные.
Обновление : (После примечания ниже.) Ах, похоже на проблему кеширования.Я должен был подумать об этом.Поскольку getJSON
использует GET
, кэширование определенно является тем, что вам нужно отслеживать.
getJSON
- это просто оболочка для ajax
, так что вы можете использовать
$.ajax({
url: "jsontopevents.php",
cache: false,
dataType: 'json',
success: function(json) {
alert(json.NameOfEvent);
}
});
Обратите внимание на аргумент cache
.Подробнее см. Документы ajax
.