首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过单击两次提交来避免在Asp.net MVC中重复提交表单。

通过单击两次提交来避免在Asp.net MVC中重复提交表单。
EN

Stack Overflow用户
提问于 2012-01-06 20:43:51
回答 7查看 35.3K关注 0票数 31

我在Asp.net MVC中呈现一个带有提交按钮的表单。成功将记录添加到数据库后,页面将重定向。以下是代码:

代码语言:javascript
运行
复制
[HttpPost]
public ActionResult Create(BrandPicView brandPic)
{
    if (ModelState.IsValid)
    {
        if (!String.IsNullOrEmpty(brandPic.Picture.PictureUrl))
        {
            Picture picture = new Picture();
            picture.PictureUrl = brandPic.Picture.PictureUrl;
            db.Pictures.Add(picture);
            brandPic.Brand.PictureId = picture.Id;
        }
        db.Brands.Add(brandPic.Brand);
        db.SaveChanges();
        return RedirectToAction("Index");
    }
    return View();
}

但是,在测试过程中,我发现如果反复单击表单,就会提交多个条目并将其保存到数据库中。

如果表单已提交给服务器一次,那么如何确保不会提交重复的表单。

EN

Stack Overflow用户

发布于 2018-07-19 22:47:25

使用mvc客户端验证的mvc应用程序的解决方案应该是:

代码语言:javascript
运行
复制
$('form').submit(function () {
    if ($(this).valid()) {
        $(':submit', this).attr('disabled', 'disabled');
    }
});
票数 9
EN
查看全部 7 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8757963

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档