页面中入口静态default页面中:window.top.location.replace ("TiPLM\logon.aspx")
经过浏览器解析后:http://172.16.8.108/TiPLMLogon.aspx,   TiPLM后的\没了,
要怎么修改才能保证“http://172.16.8.108/TiPLM/Logon.aspx",修改为绝对路径上没有问题,但是每次在开发机器上发布都要手动修改,这样挺麻烦,有没有办法,在不修改为绝对路径的情况,解决这个问题?浏览器发布

解决方案 »

  1.   

    可以配置放在config 里面去读取的,这样以后也不需要手动去代码里面改,改了程序还要生成发布, 如果是配置文件就方面多了。
      

  2.   

    window.top.location.replace ("TiPLM/logon.aspx")这样就OK吧
      

  3.   

    1,回复1 楼,是我没有说清楚,
    写成绝对路径window.top.location.replace ("http://172.16.8.108/TiPLM/Logon.aspx")是没有问题的,在开发机器和服务器端来回切换总不方便吧,
    我的意思是如何让浏览器解析相对路径“TiPLM\logon.aspx”,
    写在这样:window.top.location.replace ("TiPLM\logon.aspx")
    浏览器会把TiPLM\logon.aspx中的杠去掉。
      

  4.   

    回复2楼,
    window.top.location.replace ("TiPLM/logon.aspx")
    window.top.location.replace ("TiPLM\logon.aspx")有什么区别吗?
    一样的,在浏览的时候会被浏览器解析去掉,
    最终的解析结果是:http://172.16.8.108/TiPLMlogon.aspx
      

  5.   

    经chrome下测试window.top.location.replace ("TiPLM/logon.aspx");是可以.楼主确定是过这样写?
    /\这两种斜杠意义是不一样的..URL里都是用/
      

  6.   

    转义符啊,要用两个斜杠window.top.location.replace ("TiPLM\\logon.aspx") 
      

  7.   

    什么东东,还每次发布都 要改,你可以移植到配置文件中呀或者:window.top.location.replace('http://'+window.location.hostname+'/TiPLM/logon.aspx');
      

  8.   

    楼主,你的问题在于用错斜杠了。本身用相对路径是没有问题的。你改相对路径用了“\”,这个在js字符串里面是转义符,所以才会变没有了。js字符串里面要“\”字符要写成“\\”或者你直接用“/”试试。URL路径本来就应该用这个的window.top.location.replace ("TiPLM/logon.aspx")