• Request.UrlReferrer 实现页面刷新


    在使用Ajax 异步提交表单的时候,需要返回某些状态信息。但如果把需要返回的如分页、过滤的参数写在控制器的参数里面,会比较繁琐。

    因此,1、可以在控制器里面使用 Request 对象的请求的URL. Request.UrlReferer.


    //管理员将单个申报项目设置为提交。
    [Authorize(Roles = "SuperAdministrator")]
    [HttpPost]
    public ActionResult MakeASubmit(string id)
    {
    var applicationProject = db.ApplicationProjects.Find(id);
    if (applicationProject == null)
    {
    return new HttpNotFoundResult();
    }
    applicationProject.IsSubmit = true;
    db.SaveChanges();

    if (Request.UrlReferrer != null)
    {
    var returnUrl = Request.UrlReferrer.ToString();
    return new RedirectResult(returnUrl); //返回当前请求的URL。
    }

    return RedirectToAction("Index", "ApplicationProject");
    }

    2、同样,也可以View 中使用。

    如:

    @if (Request.UrlReferrer != null)
    {
    var returnUrl = Request.UrlReferrer.ToString();
    <a href="@returnUrl">返回我的申报列表</a>
    }
    else
    {
    @Html.ActionLink("返回我的申报列表", "IndexForApplicator")
    }

    在javascript 中, 也可以使用  location.href =location.href 刷新页面。这种适用于以Ajax 方式提交表单的情况,因为实践证明,ajax 方式提交的表单使用上述方法,不能更新页面状态。只能原样加退。使用  location.href =location.href 刷新页面能够使用页面状态更新与数据库一样。

  • 相关阅读:
    4、CreateJS介绍-PreLoadJS
    3、CreateJS介绍-SoundJS
    洛谷 题解 UVA1151 【买还是建 Buy or Build】
    算法详解之拓扑排序
    算法详解之缩点
    洛谷 题解 P3627 【[APIO2009]抢掠计划】
    板娘脚本
    2019.6.20义乌测试赛自我成绩分析
    洛谷 题解 P1225 【黑白棋游戏】
    洛谷 题解 P1908 【逆序对】
  • 原文地址:https://www.cnblogs.com/liuyuanhao/p/5616034.html
Copyright © 2020-2023  润新知