0

JavaScript関数によって生成された画像をサーバーに送信する必要があります。そのために、画像の base64 文字列を非表示のテキスト ボックスに保存します。

myTextBox.value = 'imagedata';

小さなサイズのファイル (1MB 以下) に適しています。

ただし、大きなファイルを送信しようとすると、サーバーから「Base-64 char 配列の長さが無効です」というエラーが返されます。

奇妙な点は、Chrome ではこのエラーが発生するが、Internet Explorer 10 では発生しないことです。

デバッガーで文字列の値を確認するとChromeで切り捨てられているようです。

この問題の原因は何ですか? 回避策はありますか?

ありがとうございました。

4

2 に答える 2

1

それだけのコンテンツを保持するために単一のテキストボックスを使用するべきではありません。テキストボックスは限られた量のコンテンツしか保持できません。クロムでその限界に達しているようです。

本当に大量のコンテンツを保存する必要がある場合は、コンテンツを複数のテキスト ボックスに分割する必要があります。

最大サイズはブラウザによって異なります。 詳しくはこちら

于 2013-05-24T16:55:16.227 に答える