-2

jQuery ajaxを使用して、クライアントのブラウザーからサーバーに更新を送信しています
。JSONがサポートしていない文字がいくつかあることに気付き
ました。それらを送信するには、それぞれの前に\を追加する必要があります。

この文字はjson.comで十分に文書化されています:

jsonStrings
(ソース:json.org

私はJavaScriptがあまり得意ではないので(この分野では初めてです)、
文字列を受け取り、この要件に合うようにフォーマットする関数がすでに作成されているのではないかと思います。

iv'eはWebを検索しましたが、これに対するjavascriptソリューションが見つかりませんでした。

よろしくお願いします、エイタン。

4

1 に答える 1

0

解決しました!私はこの@$にあまりにも多くの時間を費やしました!

JSON.stringifyが実際に特殊文字を処理していることがわかりました。
問題は、私がデータを構造化するために使用した方法にありました...
私はそれを次のように行いました:

blah = JSON.stringify( { a: "1" } );
$.ajax({
         type: "POST",
         url: "page.aspx/MethodName",
         data: "{ paramName: '" + blah + "'}",
         contentType: "application/json; charset=utf-8",
         dataType: "json"});

これを修正するために、私はちょうどしました:

//nesting the param name in the data structure passed to stringify:
blah = JSON.stringify( { paramName : { a: "1" } } ); 
    $.ajax({
             type: "POST",
             url: "page.aspx/MethodName",
             data: blah,
             contentType: "application/json; charset=utf-8",
             dataType: "json"});

私がこれを解決するのを手伝ってくれたすべての人に感謝します。

于 2012-09-11T20:16:58.547 に答える