3

呼び出されないでコールバックします。

function GetTrainingResults(id,callback){
    $.getJSON("/dashboard/GetTrainingResults/", {'id':id}, callback);
}
GetTrainingResults('id',function(result){
    alert(result);
});

コードビハインドは

 public ActionResult GetTrainingResults(int id)
    {
        string test = "You are there.";
        return Json(test, JsonRequestBehavior.AllowGet);
    }

または、別の方法を提案します。コントローラ メソッドを呼び出し、javascript でメソッドの応答を待機するタスクを実行します。

ありがとう

4

3 に答える 3

3

を使用するjQuery.ajaxと、少なくともサーバーから返されるエラーを確認できます。

function getTrainingResults(id, callback) {
    $.ajax({
        url: "/dashboard/GetTrainingResults/",
        data: {id: id},
        success: function(data) {
            callback(data);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            console.log(errorThrown);
            callback(errorThrown);
        }
    });
}
于 2013-05-15T11:32:26.570 に答える
0

リクエストが正常に返されていることを確認してください。ajax 短縮関数は、リクエストが成功した場合 (つまり、ステータス コード 200 で正しいデータ型 (つまり json)) にのみコールバックを呼び出します。完全な .ajax jquery 関数を試して、内部で何が起こっているかを確認してください。

.getJSON() も同等です

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

そのため、データ型が原因でエラーが発生する可能性があります。

ソースhttp://api.jquery.com/jQuery.getJSON/

于 2013-05-15T11:28:55.030 に答える