Простой пример как отправить Ajax’ом объект в JSON формате, в контроллер для дальнейшей работы с ним.
Незаполненные поля получат значение null.
Скрипт в представлении
<script> $(document).ready(function () { $('body').on('click', 'button[name="AddProduct"]', function () { var product = JSON.stringify({ 'Name': $('textarea[name="productName"]').val(), 'Cost': $('input[name="productCost"]').val(), }); console.log(product); $.ajax({ url: "/Products/AjaxCreate/", method: "POST", contentType: 'application/json', data: product, success: function (response) { console.log(response); } }); }); }); </script>
Контроллер
[HttpPost] public ActionResult AjaxCreate(Product product) { return Json(new { result = "success" }, JsonRequestBehavior.AllowGet); }