1

応答をツリーにバインドする jstree プラグインにオブジェクトを送信する MVC4 API コントローラーを使用して、json 応答を処理しようとしています。ここで、応答にはフォルダー リストと要求の httpresponse が含まれます。応答は、サーバー接続 [条件の 1 つとしてそれを取る]に依存します。

ケース 1 : サーバー接続に問題がない場合、応答はRemember the folder count may be zero, this is where the problem exist, this has to be the success case and message like no leaf node exist has to be displayed but can also be the case of error as explained in case 2httpresponse [ 200, OK ] を含むフォルダー オブジェクト ( ) です。

ケース 2 : サーバー接続が正しくない場合、応答はフォルダー オブジェクト カウント ゼロであり、これをエラー コールバック関数で処理し、エラー メッセージをサーバー接続エラーとして表示する必要があります。

問題は、サーバー接続に問題がなく、フォルダー オブジェクトの数がゼロの場合、応答が最初に成功コールバックに送られ、次にエラー コールバックにも送られ、サーバー接続エラーとしてエラー メッセージが表示されることです。葉ノードが存在しないことを表示します。

クライアント側のコード:

    var recreateTree = function (model) {
        $(#treeview)
            .jstree({
                "json_data": {
                    "ajax": {
                        "url": window.virtualPath + "api/myDirectory/TreeViewNodes/",
                        "type": "POST",
                        "data": {},
                        "success": function (data) {
                            do something...
                        },
                        "error": function (data) {
                            do something else...
                        }
                    } 
                 },
              "themes":{......},
               .......... 
            }).bind(........binding code.......);

誰でも私を助けてくれますか?

4

1 に答える 1

0

申し訳ありませんが、最初にあなたの質問を誤解しました。

この問題は、データ応答の解析に関連しているようです。

空の文字列は不正な JSON と見なされ、エラーが発生します。

この問題を解決するには、空の文字列の代わりに「{}」を返すことをお試しください。

于 2013-09-25T09:46:53.687 に答える