【问题标题】:How can i null the ViewBag property when i comming back to index view?当我返回索引视图时,如何使 ViewBag 属性为空?
【发布时间】:2019-09-05 09:24:55
【问题描述】:

我在引导程序警报框中显示消息。当我单击 google chrome 页面返回 aero 以返回索引视图时,警报框会显示,但是当警报框第一次显示在索引视图中时,我会关闭它。我该如何解决这个问题。 我在服务器端的引导警报框中显示 api 响应的消息我将消息存储在 tempdata 中我将 tempdata 复制到 viewbag 然后我在我的索引操作中将 tempdata 设为 null

这是我的行动

这是我的索引视图...

<div class="alert alert-info alert-dismissible text-center" role="alert">
    <button type="button" class="close" data-dismiss="alert" aria-label="Close">
        <span aria-hidden="true">&times;</span>
    </button>
    @ViewBag.Message
</div>

【问题讨论】:

  • 在第一组 viewbag 上存储 bool 标志、会话或全局等,将其设置为 true。净时间它会显示真实意味着你已经填满了。然后如果该标志为真,则将您的 viewbag 设置为 null。
  • 让我知道这是否是您的解决方案,然后我会告诉它的代码。
  • 对我不起作用的问题是,当从另一个页面单击 goole chrome back aero 选项以返回索引视图时,我的警报框将显示已关闭此
  • 知道了。它是一个前端工作。您需要在第一次存储一个 cookie 并标记为 true,并且每次页面重新加载或返回时,只需检查 cookie 值是否为 true。明白了吗?
  • 给我看例子 plxz

标签: c#


【解决方案1】:

给你。

 $( document ).ready(function() {

    var flag = localStorage.getItem("myPopup");

    if(flag == "true"){ //means popup was already shown:

        //hide popup if its second time.
        $("#popDiv").hide();
    }
    else{ //means popup is show for first time:

        //set flag:
        localStorage.setItem("myPopup", "true");
    }
 });

【讨论】:

  • 正确重命名您的 id 名称和变量。
  • 感谢您的方法有效,但此方法我的问题无法解决
  • 它必须有帮助。问题告诉我什么?
  • 当我发布请求响应消息时,我会在同一控制器消息的索引中的警报框中显示此消息,我在阅读警报框后关闭它
  • 何时进行其他活动,例如转到其他页面并返回索引然后再次显示警报框
猜你喜欢
  • 2019-11-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多