gpt4 book ai didi

javascript - ASP.NET MVC 3 - ajax调用后,重定向到新页面或生成页面刷新

转载 作者:行者123 更新时间:2023-11-28 02:43:03 26 4
gpt4 key购买 nike

场景:

我编写了一个 MVC 向导,如果浏览器中启用了 javascript,它会自动使用 ajax。向导的每个步骤都是一个 PartialView(我使用的是 ASP.NET MVC 3)。

一切正常。

问题在于刷新页面,例如,如果用户的状态由于她填写向导的方式而发生变化。 EG,如果向导让用户登录或注册。当向导通过 AJAX 获取部分 View 来一步步“移动”时,页面不会刷新以反射(reflect)用户状态的变化(例如,现在注册了匿名用户)。

我想要做什么:

本质上,当我需要全页刷新时,我需要在通过 AJAX 提供与向导当前步骤相对应的部分 View 后在客户端上自动运行以下命令:

location.reload();

问题:

由于 DOM 已通过 AJAX 修改,我不知道如何使我的 javascript (location.reload();) 在无需用户干预(例如单击按钮)的情况下运行。

有什么建议吗?我已经下类一段时间了,正在努力恢复正常状态。

最佳答案

目前,我已经使用以下文章中的代码解决了我的问题:

使用 ASP.NET MVC 时,AJAX 调用后重定向

我喜欢本文中讨论的方法,因为它以一种非常 MVC 的方式生成可重用的代码 - 我已经有一个基本 Controller (AjaxController.cs),我在其中封装了所有 AJAX 感知代码这是一个很好的补充。

但是,这种方法有两个问题:

  1. 我必须重定向离开我的向导,因此它仅适用于向导的最后一步。如果用户的状态在向导进行到一半时发生变化,我仍然会感到不安。

  2. 我仍然想知道如何在 AJAX 调用后刷新我的页面,而不是像这样重定向。

所以如果有人知道答案,我很乐意给他们 cookies 。

关于javascript - ASP.NET MVC 3 - ajax调用后,重定向到新页面或生成页面刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12370441/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com