FineUI 官方论坛

标题: 有关Tab嵌入子网站的子网站页面调用问题 [打印本页]

作者: 一尺野光    时间: 2018-6-21 15:19
标题: 有关Tab嵌入子网站的子网站页面调用问题
B网站 www.B.com
目录
文件名
/
main.aspx
/Xmgl
XmglList.aspx
/Xmgl
XmglEdit.aspx
/Jsdwglex
jsdwdaSelectForm.aspx
页面调用
步骤
main.asp
在Tab中嵌入
    ~/xmgl/xmglList.aspx
1
XmglList.aspx
XmglList.aspx通过菜单调用
    ~/xmgl/xmglEdit.aspx
2
XmglEdit.aspx
XmglEdit.aspx通过按钮调用
    ~/Jsdwglex/jsdwdaSelectForm.aspx
3
说明:在浏览器中,直接进入www.B.com时,页面调用步骤1、2、3都正常
问题
部署A网站www.A.com,并在浏览器中打开
 
在A网站中,在Tab页面嵌入www.B.com时,出现问题
 
上述的页面调用步骤1、2都能正常
 
页面调用步骤3出问题
调试
若在步骤3中,调用JsdwSelectForm.aspx时,采用www.B.com/Jsdwglex/jsdwdaSelectForm.aspx,即可。
错误提示
[attach]11298[/attach]


 


作者: 一尺野光    时间: 2018-6-21 15:25
注:后面3个图,与本问题无关
作者: sanshi    时间: 2018-6-21 16:18
这个是知识分享吧?

不管怎么嵌套,只要路径正确就不会有问题。路径在服务器端使用 ~/ 开头的绝对路径就行
作者: 一尺野光    时间: 2018-6-22 06:50
调用代码
protected void edtXmsyJsdw_Sjdw_Trigger1Click(object sender, EventArgs e)
    {
      PageContext.RegisterStartupScript(Window_SelectDw_Sjdw.GetShowReference("~/jsdwglEx/jsdwdaSelectForm.aspx",
       "选择设计单位:", jsdwdaSelectForm._FormWidth, jsdwdaSelectForm._FormHeight));
    }就是用~/的,报错

作者: zy32002    时间: 2018-6-22 09:44
我是很烦用~/这个表示绝对路径,这个在html和js中根本不认。基本上我只用 / 来显示根路径,减少挖坑的可能。
作者: sanshi    时间: 2018-6-22 09:45
一尺野光 发表于 2018-6-22 06:50
调用代码
protected void edtXmsyJsdw_Sjdw_Trigger1Click(object sender, EventArgs e)
    {

404问题在最好纠正的,看下URL路径是否存在。

如果你是不同域名下的互相调用,需要写完整的网址(而不能以 ~/ 开头)
作者: 一尺野光    时间: 2018-6-22 09:59
我的解决想法:
   如果,能在Window_SelectDw_Sjdw.GetShowReference()方法中,以当前活动窗口的前缀域名或IP,对~/进行替换,这样最便捷。
   现在在测试的项目中,当B网站被A网站的Tab嵌入后,调用子页面的域名是www.A.com,而不是希望的www.B.com

对于,sanshi所提到的 需要写完整的网址(而不能以 ~/ 开头),实际上可行性不强
  原因:
  该网站被部署在不同的域名下,存在多样性。
  当然,也可以通过在web.config的appSettings来标识出来,但要对整个项目中的页面调用都要改动代码,工作量比较大。
作者: 一尺野光    时间: 2018-6-22 10:02
zy32002 发表于 2018-6-22 09:44
我是很烦用~/这个表示绝对路径,这个在html和js中根本不认。基本上我只用 / 来显示根路径,减少挖坑的可能 ...

对于一般网站而言,如果是单独部署,一般应用是没问题的。但如果涉及多网站集群部署、单点登录时,就会涉及到好像就算是用 / 也是有问题
作者: zy32002    时间: 2018-6-22 10:41
一尺野光 发表于 2018-6-22 10:02
对于一般网站而言,如果是单独部署,一般应用是没问题的。但如果涉及多网站集群部署、单点登录时,就会涉 ...

~/ 对网站集群部署,能解决问题?
作者: 一尺野光    时间: 2018-6-23 14:58
sanshi 发表于 2018-6-22 09:45
404问题在最好纠正的,看下URL路径是否存在。

如果你是不同域名下的互相调用,需要写完整的网址(而不能 ...

关于我的解决想法:
   如果,能在Window_SelectDw_Sjdw.GetShowReference()方法中,以当前活动窗口的前缀域名或IP,对~/进行替换,这样最便捷。
   现在在测试的项目中,当B网站被A网站的Tab嵌入后,调用子页面的域名是www.A.com,而不是希望的www.B.com

有没有可能支持?
作者: sanshi    时间: 2018-6-25 10:42
一尺野光 发表于 2018-6-23 14:58
关于我的解决想法:
   如果,能在Window_SelectDw_Sjdw.GetShowReference()方法中,以当前活动窗口的前 ...

请自行处理,大部分用户都是处理一个站点内部的网址,你这种算是特殊情况,自己写个函数封装下自己的逻辑




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