ユーザーがビュー内のボタンをクリックするjQuery .ajaxプログラムを作成しようとしています。これにより、$.ajaxがトリガーされ、続いてコントローラーに名前が送信され、コントローラーは名前の前にhelloを追加し、json応答を送り返します。
コントローラーから JSON 応答を受信できましたが、コントローラーで投稿データを読み取ることができませんでしたname
。
これが私のコードです:
コントローラ クラス
public JsonResult processJsonRequest(PersonModel model)
{
string returnString = "Hello , receive JSON data" + model.Name;
return Json(returnString, JsonRequestBehavior.AllowGet);
}
モデルクラス
public class PersonModel
{
public string Name { get; set; }
}
意見
@{
ViewBag.Title = "Index";}
@Scripts.Render("~/bundles/jquery")
@using (Html.BeginForm())
{
<input type="button" id="b1" value ="Press Me" />
}
<script type="text/javascript">
$(document).ready(function () {
$("#b1").click(function () {
var person = { Name: 'khurram' };
$.ajax({
type: "POST",
url: "/JSON_Ajax_03/processJsonRequest",
data: JSON.stringify(person),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
alert(response);
}
});
});
});
</script>