MVC与AJAX一起删除表行
我想删除索引页中的一个表行,在删除该行之前,我必须在数据库中修改该行,并显示一个pop以确认删除操作。但是,虽然我删除了它在数据库中删除的行,但在Ajax中执行成功操作后,我的页面不会刷新。下面是我为视图和控制器编写的代码,并给出了模型的定义作为参考MVC与AJAX一起删除表行,ajax,Ajax,我想删除索引页中的一个表行,在删除该行之前,我必须在数据库中修改该行,并显示一个pop以确认删除操作。但是,虽然我删除了它在数据库中删除的行,但在Ajax中执行成功操作后,我的页面不会刷新。下面是我为视图和控制器编写的代码,并给出了模型的定义作为参考 // Controller using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; usi
// Controller
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Data.Entity;
using LAMS_Master.Models;
namespace LAMS_Master.Controllers
{
public class Acquisition_Lease_Case_RecordController : Controller
{
private ApplicationDbContext db;
public Acquisition_Lease_Case_RecordController()
{
db = new ApplicationDbContext();
}
protected override void Dispose(bool disposing)
{
db.Dispose();
}
// GET: Acquisition_Lease_Case_Record
public ActionResult Index()
{
List<acquisition_lease_case_record_master> listdata = new List<acquisition_lease_case_record_master>();
foreach(var d in db.acquisition_lease_case_record_master.Where(c => c.int_deleted_sts == 0).Include(c => c.vill_code).ToList())
{
d.chrv_land_class_cd = db.landclasslistmaster.Where(c => c.chrv_landclass_cd == d.chrv_land_class_cd).Select(c => c.chrv_landclass).SingleOrDefault();
listdata.Add(d);
}
return View("Index",listdata);
}
public ActionResult Create()
{
ViewBag.village = new SelectList(db.village_master.Where(c => c.int_deleted_sts == 0).ToList(), "chrv_vill_code", "chrv_vill_name");
ViewBag.landclass = new SelectList(db.landclasslistmaster.ToList(), "chrv_landclass_cd", "chrv_landclass");
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(acquisition_lease_case_record_master alcrm)
{
if (ModelState.IsValid)
{
alcrm.fk_chrv_proj_code = "LAMS111811PCB06";
alcrm.int_created_by = 0;
alcrm.int_deleted_sts = 0;
alcrm.chrv_ip_address = UilityMaster.GetLocalIPAddress();
db.acquisition_lease_case_record_master.Add(alcrm);
db.SaveChanges();
return RedirectToAction("Index");
}
ViewBag.village = new SelectList(db.village_master.Where(c => c.int_deleted_sts == 0).ToList(), "chrv_vill_code", "chrv_vill_name");
ViewBag.landclass = new SelectList(db.landclasslistmaster.ToList(), "chrv_landclass_cd", "chrv_landclass");
return View();
}
[HttpGet]
public ActionResult Edit(string case_no)
{
var data = db.acquisition_lease_case_record_master.Include(c=>c.vill_code).Where(c=>c.chrv_case_no==case_no).SingleOrDefault();
data.chrv_land_class_cd = db.landclasslistmaster.Where(c => c.chrv_landclass_cd == data.chrv_land_class_cd).Select(c => c.chrv_landclass).SingleOrDefault();
return View("EditALCRM", data);
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit(acquisition_lease_case_record_master alcrmedit)
{
if (alcrmedit.num_case_area!=null && alcrmedit.tms_case_dt!=null && alcrmedit.chrv_case_no!=null)
{
var casefromdb = db.acquisition_lease_case_record_master.Find(alcrmedit.chrv_case_no);
casefromdb.num_case_area = alcrmedit.num_case_area;
casefromdb.tms_case_dt = alcrmedit.tms_case_dt;
db.Entry(casefromdb).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View("EditALCRM", alcrmedit);
}
public JsonResult DeleteCaseRecord(string case_no)
{
var deletedata = db.acquisition_lease_case_record_master.Find(case_no);
bool result = false;
if (deletedata != null)
{
deletedata.int_deleted_sts = 1;
db.Entry(deletedata).State = EntityState.Modified;
db.SaveChanges();
result = true;
}
return Json(result, JsonRequestBehavior.AllowGet);
}
}
//控制器
使用制度;
使用System.Collections.Generic;
使用System.Linq;
使用System.Web;
使用System.Web.Mvc;
使用System.Data.Entity;
使用LAMS_主模型;
名称空间LAMS_主控制器
{
公共类获取\租赁\案例\记录控制器:控制器
{
私有应用程序上下文数据库;
公开收购(租赁)(案例)(记录控制人)
{
db=新的ApplicationDbContext();
}
受保护的覆盖无效处置(布尔处置)
{
db.Dispose();
}
//获取:收购\租赁\案例\记录
公共行动结果索引()
{
列表
}
@*模态定义*@
删除
你确定要删除吗?
//索引页的脚本
@Scripts.Render("~/bundles/jqueryval")
<script type="text/javascript">
var ConfirmDelete = function (actid) {
$("#hiddencaseno").val(actid);
$("#myModal").modal('show');}
var DeleteItem = function () {
$("#loaderDiv").show();
var actid = $("#hiddencaseno").val();
$.ajax({
type: 'POST',
url: '@Url.Action("DeleteCaseRecord")',
data: { case_no: actid },
success: function (result) {
$("#loaderDiv").hide();
$("#myModal").modal('hide');
alert('#' + actid);
$('#'+actid).remove(); }})}
</script>
@Scripts.Render(“~/bundles/jqueryval”)
var ConfirmDelete=函数(actid){
$(“#hiddencaseno”).val(actid);
$(“#myModal”).modal('show');}
var DeleteItem=函数(){
$(“#loaderDiv”).show();
var actid=$(“#hiddencaseno”).val();
$.ajax({
键入:“POST”,
url:'@url.Action(“DeleteCaseRecord”)',
数据:{case_no:actid},
成功:功能(结果){
$(“#loaderDiv”).hide();
$(“#myModal”).modal('hide');
警报(“#”+actid);
$('#'+actid.remove();}})}
@Scripts.Render("~/bundles/jqueryval")
<script type="text/javascript">
var ConfirmDelete = function (actid) {
$("#hiddencaseno").val(actid);
$("#myModal").modal('show');}
var DeleteItem = function () {
$("#loaderDiv").show();
var actid = $("#hiddencaseno").val();
$.ajax({
type: 'POST',
url: '@Url.Action("DeleteCaseRecord")',
data: { case_no: actid },
success: function (result) {
$("#loaderDiv").hide();
$("#myModal").modal('hide');
alert('#' + actid);
$('#'+actid).remove(); }})}
</script>