Функция обратного вызова $ .getJson не работает - PullRequest
0 голосов
/ 16 ноября 2009

Я вызываю JSP, передавая параметры, которые выводят действительный JSON в качестве ответа, но функция обратного вызова $.getJson по-прежнему не срабатывает. Вывод страницы JSP:

 { "data": [ [ [ 1258185480000,4.39], 
               [ 1258186020000,4.31],
               [ 1258184940000,4.39],
               [ 1258183560000,4.39]  ] ] }

URL-адрес указывает на страницу JSP

Мой JQuery код

<script id="source" language="javascript" type="text/javascript">
$(function () {   
  alert("before");
  $.getJson(URL,function(json){
            alert("hello");
          var plot = $.plot($("#placeholder"), json.data, options);
    });

 alert("after");
});

Ответы [ 5 ]

9 голосов
/ 16 ноября 2009

Функция: $. GetJSON , а не $.getJson

6 голосов
/ 21 сентября 2015
$.getJSON( URL, function(data) {
  alert("hello");
});

не что иное, как сокращение для вызова ajax

$.ajax({
  dataType: "json",
  url: URL,
  data: data,
  success: function(data) {
    alert("hello");
  }
});

НО

Важно: Начиная с jQuery 1.4, если файл JSON содержит синтаксическую ошибку, запрос обычно завершается молча ... Например, все строки представленные в JSON, будь то свойства или значения, должны быть в двойных кавычках

источник: jquery.getjson docs

2 голосов
/ 09 декабря 2012

$. GetJSON не будет использовать обратный вызов без правильного объекта JSON для обработки.

2 голосов
/ 04 августа 2011

Я просто потратил около двух часов на это. Я нашел еще один пост, в котором обсуждается разница между $.getJSON и $.get и что на самом деле их нет. Поэтому я поменял свой getJSON() на get(), и это сработало.

(Также хочу отметить, что я также проверил, что все остальное работало, войдя в систему с помощью действия rails и записав, что я мог, из javascript вне функции обратного вызова.)

1 голос
/ 16 ноября 2009

Также убедитесь, что с Firebug вы получаете верный JSON с сервера.

...