如何在加载下一页时让 toastr.js 条通知保持打开状态?
How do I keep toastr.js notifications open when I load the next page?
我正在使用 asp.net ASPX 页面。我已将 toastr.js 放在我的 MasterPage 上。它工作正常。我在带有保存按钮的页面上使用它,该按钮保留在同一页面上,如下所示:
ScriptManager.RegisterStartupScript(this, this.GetType(), "toastr", "toastr.info("Save successful.");", true);
还有一个“保存并继续”按钮,可以像这样保存和加载下一页:
ScriptManager.RegisterStartupScript(this, this.GetType(), "toastr", "toastr.info("Save successful.");window.location='NextPage.aspx';", true);
但是,当我单击“保存并继续”按钮时,它会闪烁通知,但随后加载下一页后它就消失了。没有跨页面持久化。
也许我对 javascript 细节不太了解,但是否有一些异步方式来加载 toast 通知以便它们不特定于页面?
我对 ASP.NET WebForms 了解不多,但这里有一些事情需要考虑:
问题是,当您使用服务器端代码(在本例中为 C#)提交和处理表单时,整个页面会重新加载,包括您的 javascript 文件。这就是当您单击“保存并继续”时 toastr 消失的原因。
我唯一能想到的就是:
当您单击“保存并继续”时运行的方法需要将必要的信息传递到下一页,以便第二页知道显示 toastr 而不是第一页。
如果您真的想向数据库提交记录,导航离开并让 toastr 显示整个时间,您可能需要查看单页应用程序(允许您发出异步请求,带路由,同时停留在同一页面上,允许 JS 保持 运行 而无需整页刷新)。虽然这可能意味着重写您的应用程序,但这可能不是一种选择。
我正在使用 asp.net ASPX 页面。我已将 toastr.js 放在我的 MasterPage 上。它工作正常。我在带有保存按钮的页面上使用它,该按钮保留在同一页面上,如下所示:
ScriptManager.RegisterStartupScript(this, this.GetType(), "toastr", "toastr.info("Save successful.");", true);
还有一个“保存并继续”按钮,可以像这样保存和加载下一页:
ScriptManager.RegisterStartupScript(this, this.GetType(), "toastr", "toastr.info("Save successful.");window.location='NextPage.aspx';", true);
但是,当我单击“保存并继续”按钮时,它会闪烁通知,但随后加载下一页后它就消失了。没有跨页面持久化。
也许我对 javascript 细节不太了解,但是否有一些异步方式来加载 toast 通知以便它们不特定于页面?
我对 ASP.NET WebForms 了解不多,但这里有一些事情需要考虑:
问题是,当您使用服务器端代码(在本例中为 C#)提交和处理表单时,整个页面会重新加载,包括您的 javascript 文件。这就是当您单击“保存并继续”时 toastr 消失的原因。
我唯一能想到的就是:
当您单击“保存并继续”时运行的方法需要将必要的信息传递到下一页,以便第二页知道显示 toastr 而不是第一页。
如果您真的想向数据库提交记录,导航离开并让 toastr 显示整个时间,您可能需要查看单页应用程序(允许您发出异步请求,带路由,同时停留在同一页面上,允许 JS 保持 运行 而无需整页刷新)。虽然这可能意味着重写您的应用程序,但这可能不是一种选择。