我有以下操作方法,它返回部分視圖_create
。但有沒有辦法通過部分視圖傳遞Json對象,如return Json(new { IsSuccess = "True" },
。我可以同時從我的操作方法中返回部分視圖和Json對象嗎
我的行動方法看起來如下: -
try
{
if (ModelState.IsValid)
{
var v = repository.GetVisit(visitid);
if (!(v.EligableToStart(User.Identity.Name)))
{
return View("NotFound");
}
vlr.VisitID = visitid;
repository.AddVisitLabResult(vlr);
repository.Save();
ViewBag.LabTestID = new SelectList(repository.FindAllLabTest(), "LabTestID", "Description", vlr.LabTestID);
// return Json(new { IsSuccess = "True" }, JsonRequestBehavior.AllowGet);
@ViewBag.status = "Added Succsfully";
return PartialView("_create",vlr) ;
}
}
:: - UPDATED- ::
什麼,我試圖做如下: -
我我正在使用ajax.beginform調用操作方法
using (Ajax.BeginForm("CreateAll", "VisitLabResult", new AjaxOptions { HttpMethod = "Post", UpdateTargetId = item.ToString(), InsertionMode = InsertionMode.Replace, OnSuccess = string.Format("disableform({0})", Json.Encode(item)), }))
成功接收來自服務器的響應後,,該的onSuccess腳本執行,,,腳本簡單地禁用形式: -
function disableform(id) { $('#' + id + ' :input').prop("disabled", true); }
的問題是,腳本總會禁用表格即使是一些驗證錯誤發生,所以我想要實現的是返回一個JSON的部分視圖,指示ModelState.IsValid是否有效,,如果它是無效的保持該表單允許用戶更正驗證錯誤。
BR
我認爲viewbag和viewmodel都不能解決我的問題,請檢查我的更新以瞭解我面對的問題的更多細節 –