2009-10-31 58 views
0

我有一个包含一些html的asp.net表单,2个控制AjaxControlToolkit的日历和一个自定义的SandTrap.WebControls文本框,它可以在我们运行这个表单的其他几个服务器上正常工作。但是一台服务器上它打破了,当我调试的JavaScript看来我正在下载一个腐败MicrosoftAjax.js - 它说意外的标记非法损坏MicrosoftAjax.js?意外的标记?这是什么?

这里是通过内部MicrosoftAjax.js线未来2932

Sys.UI.Key.prototype = { 
    backspace: 8, 
    tab: 9, 
    enter: 13, 
    esc: 27, 
    ... 
    126�=NCys.UI.�ey.ra�isterEnum("Sn2.UI.Key"); 

我做的第一件事就是将网站目录与其他服务器进行比较 - 相同。检查了MicrosoftAjax.js没有损坏。一切都是一样的。那么这可能是什么?

编辑:罪魁祸首是ajaxToolkit:ToolkitScriptManager肯定。当我删除它时,页面加载正常。 我在MicrosoftAjax.js上做了一个比较,没有什么不同了。我甚至用我的电脑中的另一个替换文件仍然没有运气。

编辑:看来,如果我在web.config中设置调试,以虚假错误消失。任何其他的想法是什么可能导致这一点?我看着.debug js文件,它看起来很好。

将重新安装ajaxtoolkit以某种方式帮助吗?或者我需要重新安装.net框架?

回答

1

打开记事本,将代码放在那里,然后将其重新保存(确保它不节能的Unicode)。有人可能已经打开它并用Wordpad或一些文字处理器保存它。因此,在视觉上,事情可能“看起来”是正确的,但它们不会。

你也可以运行针对已知良好的文件,你的坏文件COMP。或者只是复制已知良好的文件在错误的文件

人类是在计算过程中,至少值得信赖的元素。

+0

谢谢 - 增加了更多细节。它通过将web.config设置为释放模式来解决。任何想法如何解决这个问题? – kiev 2009-10-31 03:53:05

+0

我倾向于编写自己的AJAX模式,并避免自定义控件自VB6以来遇到的问题:我不知道其他程序员可能卡住了该自定义代码,所以当它崩溃时,我不想要离开而没有解决方案。至少如果是我的代码,我可以阅读我在评论中留给自己的笔记。尽管我会捅。调试vs发布引发了一些长期被遗忘的记忆。 – inked 2009-10-31 12:25:45