jquery.ajax
メソッドを使用して JavaScript 変数をサーバー側に渡そうとしています。
json 文字列を作成しようとしていますが、変数の長さが 10000 に達すると、文字列にデータが追加されなくなります。
var jsonObj = '{"code":"' + code + '","defaultfile":"' + defaultfile + '","filename":"' + currentFile + '","lstResDef":[';
$.each(keys, function(i, item) {
i = i + 1;
var value = $("#value" + i).val();
var value = value.replace(/"/g, "\\\"");
jsonObj = jsonObj + '{';
jsonObj = jsonObj + '"Key":' + '"' + Encoder.htmlEncode($(this).html()) + '"' + "," + '"Value"' + ':' + '"' + Encoder.htmlEncode(value) + '"';
jsonObj = jsonObj + '},';
alert(jsonObj);
});
jsonObj = jsonObj + ']}';
ここで、var jsonObj の文字長が 10000 の場合、それ以降の値は付加されません。
それに関しては、ある程度の制限があるようです。