3

データテーブルの操作。POST で作業機能 (現在は GET でのみ機能) を取得しようとしています。

この議論に基づいて、この関数を修正し、以下のようなものを得ました。エラーメッセージが表示されるようになりました:

json.aaData は 99 行目で未定義です

コード全体はこちら

        jQuery.post( sSource, aoData, function (data) { 
            /* Callback processing */
            oCache.lastJson = jQuery.extend(true, {}, data);

            if ( oCache.iCacheLower != oCache.iDisplayStart )
            {
                data.aaData.splice( 0, oCache.iDisplayStart-oCache.iCacheLower );
            }
            data.aaData.splice( oCache.iDisplayLength, data.aaData.length );

            fnCallback(data)
        },"json" );
    }
    else
    {
        json = jQuery.extend(true, {}, oCache.lastJson);
        json.sEcho = sEcho; /* Update the echo for each response */
        json.aaData.splice( 0, iRequestStart-oCache.iCacheLower ); // <- this line
        json.aaData.splice( iRequestLength, json.aaData.length );
        fnCallback(json);
        return;
    }
}

私は何が欠けていますか?なにか提案を?

4

2 に答える 2

1

ですjQuery.post( sSource, aoData, function (data) {。あなたは持っていますがaoData、あなたが参照するコードではaaData. タイプミスかもしれません。

于 2012-05-13T19:23:03.903 に答える
0

あなたが提供した完全なコード サンプルは、75 行しかないため、完全なコードではない可能性があり、99 行目に未定義のプロパティがあるというエラーが表示されます。

ただし、この行は次のように述べています。

json.aaData.splice( 0, iRequestStart-oCache.iCacheLower );

未定義のエラーが発生しています。何が起こっているのかというと、何らかの理由で json オブジェクトに存在しないプロパティ aaData の splice 関数にアクセスしようとしています。

したがって、JavaScript コンソールを開いて json.aaData と入力すると、undefined が返されることがわかります。そのため、json 変数の aaData プロパティを設定することになっているものはすべてそうしていません。これがエラーの追跡に役立つことを願っています。

于 2012-05-13T19:25:40.760 に答える