FineUI 官方论坛

标题: 在VS下调试正确,在IIS下报错 [打印本页]

作者: awxtggg    时间: 2012-4-9 22:31
标题: 在VS下调试正确,在IIS下报错
本帖最后由 awxtggg 于 2012-4-9 22:32 编辑

ExtAspNet版本:V3.1.3

浏览器类型和版本:WINDOWS 2003R2 IE8 IIS6 VS2005

问题描述:在需要弹出窗口(alter/window)的时候失败

测试代码:
[attach]240[/attach]

测试步骤:
1、修改test3.aspx.cs中的路径为一个实际存在的路径,运行test3.aspx,任意选择一个文件,点击“导入数据”;
2、运行Maintain.aspx,点击“新增项目”

期望的结果:
1、test3.aspx返回“选择了1个文件”
2、弹出窗口,窗口中加载add.aspx

实际的测试结果:
1、javascript报错:
  1. 消息: 'top.X' 为空或不是对象
  2. 行: 1
  3. 字符: 11587
  4. 代码: 0
复制代码
2、javascript报错:
  1. 消息: 'X' 为空或不是对象
  2. 行: 1
  3. 字符: 14674
  4. 代码: 0
复制代码
截图:
用IIS访问:
[attach]241[/attach]
用VS调试时正常。
[attach]242[/attach]
解决方案:
问题所在:VS自带的IIS运行不报错,IIS6.0报错
开始考虑是否是IIS网站属性或虚拟目录属性有问题,检查后没发现什么;“启用父路径”还是不行;已清空过缓存
===============================================
由于这个问题(无法弹出窗口),项目都已经停下来了,请大家帮忙分析一下,不胜感谢。



作者: №风影㊣    时间: 2012-4-9 22:49
看看iis6内的 .axd有映射吗?
作者: awxtggg    时间: 2012-4-10 08:02
有的,可执行文件路径:C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll
作者: awxtggg    时间: 2012-4-10 14:44
好像找到一点问题的原因了,猛然发现好像是frame引起的这个问题,如果页面是在frame内的,就会报错,如果是单独的页面,就正常了,这也是为什么在VS里调试不会报错的原因,因为调试是是一个单独的页面。
但要怎么修改呢?不使用frame这种布局方式吗?
作者: shanzhongfei    时间: 2012-4-10 15:45
http://zhidao.baidu.com/question/271185454.html
可以用CSS代替Frameset
作者: support    时间: 2012-4-12 16:19
awxtggg 发表于 2012-4-10 14:44
好像找到一点问题的原因了,猛然发现好像是frame引起的这个问题,如果页面是在frame内的,就会报错,如果是 ...

其实原因也很简单,你把test3.aspx等页面方式frame中,但是外部的页面没有使用ExtAspNet,所以你的代码:
  1. ExtAspNet.Alert.ShowInTop("文件上传成功!", "上传成功"...

  2. ExtAspNet.Alert.ShowInParent ("文件类型不正确!","类型错误",.....
复制代码
等自然会报错,top.X找不到啥的。
作者: support    时间: 2012-4-12 16:20
support 发表于 2012-4-12 16:19
其实原因也很简单,你把test3.aspx等页面方式frame中,但是外部的页面没有使用ExtAspNet,所以你的代码: ...

两个解决办法:
1. 外部页面也引入ExtAspNet
或者
2. 使用ExtAspNet.Alert.Show 而不是 ExtAspNet.Alert.ShowInParent或者ExtAspNet.Alert.ShowInTop




欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4