ASP.NET MVC で View(クライアント側)にある JSON データをコントローラーに渡す実装例です。
もっと簡潔な実装方法があると思いますが、動いたのでメモしておきます。
View
<script type="text/javascript">
<!--
$(document).ready(function () {
$("#button1").click(function () {
var data = [
{ "name": "こぶた", "age": 3 },
{ "name": "たぬき", "age": 7 },
{ "name": "きつね", "age": 5 }
];
var URL = "/Home/AnimalAction?animals=" + JSON.stringify(data);
$.ajax({
type: "POST",
dataType: "json",
url: URL,
});
});
});
// -->
</script>
<input class="button" id="button1" type="button" value="JSON をコントローラーに渡す" />
コントローラー
public class HomeController : Controller
{
...
public ActionResult AnimalAction(string animals)
{
// 引数 animals は JSON データ
return View();
}
}
今回は JSON をアクションへ渡すところまでの実装です。コントローラーで JSON データを扱うのはまた別の機会に(^_^;)