سلام
من کلیه اکشن های پروژم در صفحه ای مدال با ایجکس فراخوانی میشه(Edit/Details/Create/Index) و فرم ها رو هم میخوام با ایجکس باشه ولی یه مشکل هستش مثلا در اکشن edit ، داده های فرم با ajax ارسال میشه ولی هنگامی که داده ها بروزرسانی میشه و میخوام برگرده به همون صفحه و بره به متد های Success و Failure دسترسی داشته باشم ؟
اگه Return View بزنم برمیگرده به صفحه ادیت ئ مدال بسته میشه و اگر Return json بزنم اطلاعات رو فقط مثل یه متن نشون میده .
<form asp-action="Edit" id="Form_Id" asp-controller="Departments" data-ajax="true" data-ajax-method="Post" data-ajax-mode="replace" data-ajax-update="#Main_Content" data-ajax-success="Success" data-ajax-failure="Failure"> <div class="box-body"> <input type="hidden" asp-for="Department_Id" /> <div class="form-group"> <label asp-for="Title" class="control-label"></label> <input asp-for="Title" class="form-control" /> <span asp-validation-for="Title" class="text-danger"></span> </div> <div class="form-group"> <label asp-for="Task" class="control-label"></label> <input asp-for="Task" class="form-control" /> <span asp-validation-for="Task" class="text-danger"></span> </div> <div class="form-group"> <label asp-for="Description" class="control-label"></label> <input asp-for="Description" class="form-control" /> <span asp-validation-for="Description" class="text-danger"></span> </div> <div class="form-group"> <label asp-for="Department_Status" class="control-label"></label> <select asp-for="Department_Status" class="form-control" asp-items="ViewBag.Department_Status"></select> </div> <div class="form-group"> <input type="submit" value="ویرایش" class="btn btn-default" /> </div> </div> </form> </div> <script> function Success() { alert("s"); } function Failure() { alert("n"); } </script> @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
Controller
public async Task<IActionResult> Edit(int id, [Bind("Department_Id,Title,Task,Description,Department_Status")] Department department) { if (ModelState.IsValid) { try { _genericRepository.Update(department); await _genericRepository.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!DepartmentExists(department.Department_Id)) { } else { throw; } } return View("Index");//?????????? } return Json(department); }
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)