MVC:我可以从 Javascript 清除 ViewBag 吗?

MVC: Can I clear ViewBag from Javascript?

我有一个将任何错误消息发送到 Viewbag 的操作。当页面加载时,Viewbag 中的 at error message 将以 JS alert 的形式呈现。

JavaScript有没有办法清除 Viewbag?这样,当我收到此错误然后单击其他地方转到另一个页面,然后单击浏览器上的“后退”按钮时,viewbag 仍不包含任何内容(包括此错误消息)。现在,如果我单击返回,错误消息仍会出现。我想如果有一种方法可以用 JS 清除 ViewBag,就不会发生这种情况。

不,ViewBag完全是服务器端。

真正的问题是后退按钮不会向您的服务器发出另一个请求,因为它是从浏览器的缓存中加载的。

您可以通过在页面加载时调用 XHR 来检索数据(而不是在初始获取请求时将数据发送到客户端)来解决这个问题。完成此操作后,您可以按照 @Adriani6 的建议使用 TempData.