如何在登录任何页面 20 秒后从控制器方法显示模态 window

How to show modal window from controller method after 20 sec after login on any page

我应该在登录 20 秒后在任何视图页面中显示模态 window。模态 window 将保存在布局页面中。我想 return 在新任务中异步查看

public ActionResult Index(int Id)
{
    var viewModel = new Helper(this).GetViewModel(profile, CurrentUser);

    return View(viewModel);
}

如何异步调用应该从该控制器的方法中显示我的模态 window 的任务,并且该模态 window 应该在站点的任何页面中可用。例如,我已经登录站点,但在 20 秒内我可以转到任何控制器的方法,但我在 Index() 方法中执行的任务应该在任何当前页面中显示此模式。如何做到这一点?

如果您需要在页面加载 20 秒后加载模型:

  <script>
        $(document).ready(function () {
            setTimeout(function () {
                console.log("20second gone now i should show modal")
            }, 20000);
        }) 

    </script>

无需调用异步方法来管理它,只需在您的布局视图中尝试即可。

@using Microsoft.AspNet.Identity
@if (Request.IsAuthenticated)
{
<script>
 $(document).ready(function() {
 setTimeout(function() {
   $('#myModal').fadeIn(200);
 }, 20 000); // milliseconds
 });
</script>
}