加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET MVC中的jQuery CRUD

发布时间:2020-12-16 07:14:36 所属栏目:asp.Net 来源:网络整理
导读:看到我们的团队维护一个Intranet,其中客户端用户保证启用了 javascript,我们知道我们可以介入并开始更“彻底”地使用jQuery.我们的系统非常庞大,因此即使我们在ASP.NET MVC应用程序中使用区域,每个子系统中添加,编辑,删除和查看数据集的页面数量也非常大.一
看到我们的团队维护一个Intranet,其中客户端用户保证启用了 javascript,我们知道我们可以介入并开始更“彻底”地使用jQuery.我们的系统非常庞大,因此即使我们在ASP.NET MVC应用程序中使用区域,每个子系统中添加,编辑,删除和查看数据集的页面数量也非常大.一个区域的子系统可以有大约二十个数据表.如果有20个数据表,并且您有单独的页面要添加,删除和查看它们,这意味着总共有60页.现在假设每个区域有20个子系统,那么单个区域将有20 * 60页,我们的Intranet上大约有15个区域.你明白了,这很重要.

继续我的真实观点,我想通过使用jQuery功能在页面上显示数据表,点击“删除”,然后它给我一个带有确认按钮的删除对话框,然后提交表单,重定向到正确的行动,并为我做的工作.现在我需要在以下方面提供一些指导:

>如果我想删除而不使用ASP.NET MVC回发,那么执行此操作的过程是什么?这包括点击删除,它关闭并检查它是否能够删除(必须以正确的方式处理FK关系),然后如果能够删除它并从视图中的表中删除行,则所有都不刷新页面.
>如何使用jQuery从异步进程调用删除操作?这样做是明智的吗?通常我们使用Html.ActionLink.我是否必须将其包装成表格?
>编辑和更新也是如此,同样,最好的方法是什么?

我正在寻找一个优雅的解决方案,并且我不得不为每个页面申请这样做.任何输入都将非常感激.

解决方法

我正在开发一个项目,该项目使用链接通过AJAX POST启动删除操作(无回发).

$("a.deleteLink").click(function(event)
{
    event.preventDefault();
    if (confirm("Are you sure you want to delete this section?"))
    {
        //TODO Display processing indicator

        var myId = /* id of element */ ;

        $.post("/Section/Delete",{ id: myId },function(data)
        {
            if (data == "Success")
            {
                //handle success
                //TODO Fade out element using .fadeOut()
            }
            else
            {
                //handle error
            }
        });
    }
});

控制器方法只在/Controllers/SectionController.cs中.只接受POST以及更改数据库的任何操作.

private SectionRepository secRepo = new SectionRepository();

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Delete(long id)
    {
        Section sec = secRepo.GetById(id);

        secRepo.Delete(sec);
        secRepo.Save();

        return Content("Success");
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读