非表示フィールドに保存された JS オブジェクトを投稿しようとしています:
$("#hdnArr").val(JSON.stringify(arr));
<pre>
$.ajax({
url: form.action,
type: 'POST',
data: $(form).serialize(),
success: function (result) {
//
},
error: function (xhr, textStatus, exceptionThrown) {
//
}
});
</pre>
ローカルでは正常に動作していますが、運用サーバー (IIS 8 を搭載した Windows 2012 サーバー) では、Bad Request Error が返されます。Firebug を使用して、隠し値が次のようになっていることを確認しました。
hdnArr=%5B%7B%22Type%22%3A%22%22%2C%22TypeB%22%3A%22%22%2C%22TypeC%22%3A%22%22%2C%22TypeD%22%3A%22%22%7D%5D
この問題は基本的に%
性格です。サーバーがこの文字を受け入れるようにするにはどうすればよいですか?