0

有効なJSONを応答として出力するパラメーターを渡してJSPを呼び出していますが、それでも$.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");
});
4

6 に答える 6

10

関数は$.getJSONであり、そうではありません$.getJson

于 2009-11-16T08:04:35.087 に答える
10
$.getJSON( URL, function(data) {
  alert("hello");
});

ajax 呼び出しの省略形にすぎません

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

しかし

重要: jQuery 1.4 の時点で、JSON ファイルに構文エラーが含まれている場合、通常、リクエストは暗黙のうちに失敗します。

ソース: jquery.getjson ドキュメント

于 2015-09-21T08:05:40.377 に答える
3

$.getJSON は、処理する適切な JSON オブジェクトがなければコールバックを使用しません。

于 2012-12-09T19:24:49.560 に答える
2

私はこれに約2時間費やしました。$.getJSONととの違いについて説明している別の投稿を見つけました$.get。実際には何もありません。だから私は私のものを交換し、getJSON()それget()はうまくいきました。

(また、レールアクションからログを記録し、コールバック関数の外側のJavaScript からできることをログに記録することによって、他のすべてが機能していることも確認したことにも言及したいと思います。)

于 2011-08-04T14:50:55.403 に答える
1

また、Firebug を使用して、サーバーから有効な JSON が返されていることを確認してください。

于 2009-11-16T08:06:06.247 に答える