0
string result="12334,23432,3453455";

Ajax 呼び出しでこの文字列を取得していますが、次のエラーが表示されます:「予期しない非空白文字が JSON データの後にあります」

文字列間のカンマを削除すると正常に動作します。これを処理するには?. Ajax 呼び出しの後にコンマを使用して textarea に値を入れたい

4

2 に答える 2

1

JSON形式ではなく、CSVに似たものを出力しています。

いくつかのオプション:

  1. 可能であれば、JSON を正しく出力するように出力メソッドを修正します
  2. 文字列を CSV のように解析します
    "12334,23432,3453455".split(',')
  3. 最初に出力を JSON に準拠させてから、
    たとえば解析しますJSON.parse("["+"12334,23432,3453455"+"]")(でラップ[])
  4. dataType:'text'$.ajax電話でご指定ください。

上記のオプション 1[12334,23432,3453455]から 3 は数値の JavaScript 配列として生成されますが、オプション 4は単純"12334,23432,3453455"に文字列として生成されます。

ところで、を使用するJSON.NETと、次のようになります

// As an array:
Int32[] ary = new[]{ 12334, 23432, 3453455 };
Console.WriteLine(JsonConvert.SerializeObject(ary));
// [12334,23432,3453455]

// As a string:
String str = "12334,23432,3453455";
Console.WriteLine(JsonConvert.SerializeObject(str));
// "12334,23432,3453455"
于 2013-10-08T14:24:21.613 に答える
0

JSON パーサーによってデータを解析する必要があります。

データが の場合array、文字列は次のようになります。

"[12334,23432,3453455]"

または、次のようにする必要がありますstring

"\"12334,23432,3453455\""
于 2013-10-08T14:24:29.947 に答える