最近发现服务器上的网站无法提交任何信息了,但是可以通验证。把相同的项目拷到别的机子上测试,可以通过,断定是测试环境的问题。仔细比较两个页面几处不一样的地方:
1)在form 头中,正常页面(以下简称T页面)onsubmit="ValidatorOnSubmit();" 不能提交页面(以下简称F页面):onsubmit="if (!ValidatorOnSubmit()) return false; 为什么两个版本不一样?
2)在T页面还引入了“  <IFRAME ID=__hifSmartNav NAME=__hifSmartNav STYLE=display:none src="/aspnet_client/system_web/1_1_4322/SmartNav.htm"></IFRAME>”
“<script language="JScript" src="/aspnet_client/system_web/1_1_4322/SmartNav.js"></script>”这两段代码F页面都没有。

于是比较aspnet_client\system_web\1_1_4322下的WebUIValidation、SmartNav发现是一样?
这下晕了,既然两个文件一样,为什么生成的代码不一样?

为何会生成两个不同的事件方法呢?
立刻Google “ValidatorOnSubmit()” 发现是NET Framework版本问题影响了.生成“onsubmit="if (!ValidatorOnSubmit()) return false;”应该是高版本,比较两台机器.NET的版本,怎么查看版本?
http://support.microsoft.com/default.aspx?scid=kb;zh-cn;318785
确实是不一样的版本:T机器是打了SP1的。既然版本不一样,生成的:WebUIValidation.js、SmartNav.js也应该不一样啊!!
重新运行IIS注册工具“Aspnet_regiis -c”  测试一下页面, 问题解决了 hoho!
posted on 2005-11-16 18:38  茶马古道  阅读(203)  评论(0)    收藏  举报