首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ASP.NET和NetAdvantage中奇怪的AJAX/JS错误

ASP.NET和NetAdvantage中奇怪的AJAX/JS错误
EN

Stack Overflow用户
提问于 2009-06-04 10:56:06
回答 2查看 680关注 0票数 0

我有一个非常简单的数据捕获web应用程序。

在主捕获窗口中,当您在UltraWebGrid中保存一行时,根据某些标志,又会打开两个窗口(带有ScriptManager.RegisterStartupScript)。

其中一个窗口,工作得很好。

另一个,当它被关闭时(通过它自己的ScriptManager.RegisterStartupScript)会在主窗口中的火狐中产生下一个错误:

Sys is not defined Sys$CultureInfo$_getAbbrMonthIndex("")ScriptRe...=7c12e347 (第6391行)?在ScriptResource.axd?d=Bx90cRohr9iY-lmxXmy5QYd7JgQApS0Xh-xBfl6hEe8d-0h4pCZYQQKgxdo97mKzaD5488jiBZ8TOSa4-cOPaw2&t=4e25e479@1()ScriptRe...=4e25e479 (第499行)中,在此错误上中断this._upperAbbrMonths = this...s.dateTimeFormat.AbbreviatedMonthNames);

在此之后,Firefox变得疯狂,选项卡导航停止工作,窗口中的每个文本输入(包括地址栏和搜索框)都会绘制它们的内容,就好像它们被选中一样(所有这些都是同时发生的),事情也就不再那么奇怪了。我必须关闭窗口并重新打开它,有时我甚至必须终止进程。

我尝试了很多方法,但似乎都不起作用。我在前面提到的窗口中比较了两个aspx文件,没有什么是真正不同的。

这快把我逼疯了。

以前有没有人遇到过这个错误?有什么想法吗?黑客?要点什么?

非常感谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-06-05 17:14:23

简而言之,在浏览器中管理窗口(打开和关闭)并不是一项有趣或微不足道的任务。在关闭窗口之前,您必须确保正在执行的所有脚本都已完成。在您的情况下,听起来好像在关闭窗口时仍有一个初始化脚本在运行。此时,DOM被销毁,脚本开始尝试访问已被删除的元素。超时是最简单的方法。更好的解决方案是使用WebDialogWindow (也是在NetAdvantage中),它会弹出“窗口”,实际上是同一页上的元素。这样,您就可以在不依赖回发和脚本包含的情况下管理它,也不必为从单独的窗口中获取数据而苦苦挣扎。

票数 1
EN

Stack Overflow用户

发布于 2009-06-05 05:54:54

虽然我不知道确切的原因,但这个bug是由

ScriptManager.RegisterStartupScript(Page,Page.GetType(),"CLOSE","window.close()");

另一个窗口也有类似的东西,但不是它造成的。

我通过将window.close()包装在setTimeout("window.close();",500)中修复了它。

我不知道为什么会发生这种情况,如果谁有线索,请告诉我。

干杯!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/949843

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档