来自c#类的javascript警报

时间:2008-11-18 14:19:14

标签: c# asp.net javascript

我有一个5 aspx页面“向导”。 每个包含一个“SaveAndExit”按钮,用于在公共静态类上执行c#函数。保存后,c#代码会重定向到另一个页面。

有没有办法运行javascript:alert('Data Saved');保存之后,以及加载新页面之前。

3 个答案:

答案 0 :(得分:2)

您必须在回发时注册启动脚本才能执行警报。然后在警报后通过javascript重定向。

答案 1 :(得分:0)

你无法完全按照自己的意愿去做。

在页面已经从浏览器发回和卸载之前,C#代码(服务器端)无法运行。因此,当您的服务器端代码运行时,就浏览器而言,页面甚至不再存在,并且运行您的javascript代码为时已晚。即使在回发中间也是如此,即使回发的结果将是同一页面也是如此。这就是为什么在某些情况下,ASP.Net页面在回发期间可能会闪烁。

因此,您无法在保存数据后强制执行javascript警报,而无需通过某种类型的ajax回调来执行此操作 - 这当然是一种选择。另一种选择是让您重定向的页面在某些情况下显示某种“数据保存”消息;用简单的会话变量或加载时隐藏输入的值来触发它,这对用户来说并不明显。

但我认为最好的事情可能就是一无所获。听起来如果保存失败,您将不会重定向。你甚至可能会出现某种错误。如果您的用户对您的应用程序没有足够的信心,即使没有错误消息并且已经转到下一步,他们也不信任它,那么您就遇到了麻烦。

答案 2 :(得分:0)

Vik,除非这是家庭作业,否则我强烈建议你不要这样做。

Javascript警报对大多数用户来说非常烦人,在这种情况下似乎完全没用,正如Joel Coehoorn所解释的那样。

如果您在保存时坚持显示消息,则考虑添加可能的会话变量,如果会话变量存在,则在重定向页面上显示“数据已保存”消息,然后删除会话变量。 / p>

再次,正如Joel Coehoorn所说,如果出现错误,你应该明确地显示一条消息,但重定向应该是他们需要保存数据的所有“证明”。

相关问题