サーバー上のモデルで何をしたいのか、何を返したいのかによって異なります。部分的なビューを返しますか、それとも送信がどのように行われたかを示すものだけを返しますか?
いくつかのオプションがあります。
Ajaxフォームを使用してモデルを送信できます
@using (Ajax.BeginForm("getPT", new AjaxOptions { HttpMethod="POST", UpdateTargetId = "UpdateContainer" }))
{
<!-- FORM elements goes here... -->
}
あなたの見解では、場所
<div id="UpdateContainer"></div>
部分ビューをレンダリングする場所
ActionResult を返す代わりに、返すようにアクションを設定します。PartialViewResult
public PartialViewResult getPT(ReportModel repModel)
{
// instantiate a viewmodel
var model = new YourViewModel();
return PartialView("YourPartial", model);
}
または、部分的なビューを返す必要がない場合は、送信がどのように行われたかを知る必要があるだけかもしれません。コードで試みているように、jQuery を使用して WEB API コントローラーに送信できます。
public class ApiTestController : ApiController
{
public bool getPT(ReportModel model)
{
// do the work with your model
return ..... whatever ? :)
}
}