我有20多个不同文件名的(aspx)页面文件我希望他们加载完后地址栏都是统一的一个内容
例如 :        不管是访问  vist.aspx    default.aspx     search.aspx 等等之类的。地址栏只显示  http://www.XXXX.com    (如何用代码定义地址栏现实的内容,不要贴iis设置之类的。)请问我该怎么写代码!!(是c#代码或者js脚本实现哦)c# 或者 js  实现都可以,请贴一下或者指导一下

解决方案 »

  1.   

    Server.Transfer维持着浏览器原始的URL
    更多的就不说了 google,baidu自己去看吧
      

  2.   

    Server.Transfer跳转
    或使用context.rewritepath重写路径
      

  3.   

    如果楼主动手试一试,就知道这个要求不是 transfer 一下就能做到的。实际上这个要求根本做不到。第一,浏览器不会给你修改地址栏内容的权限。第二,url 是web资源的标识,统一了url,你如何知道要 transfer 到 vist.aspx default.aspx search.aspx 中的哪一个?楼主可以针对全部操作使用 ajax,而不使用超链接和浏览器默认的post动作,这样可以避免地址栏变化,但是有必要那么疯狂么?
      

  4.   

    我明白了,楼主可能是想用 frameset,只要地址栏里“看起来”没变就行了
      

  5.   

    咕~~(╯﹏╰)b~~~~~
    不是吧    我就一个小小要求,后期改写地址栏,而不去访问改写后的内容就是摆个pose  让别人看着舒服而已就很疯狂了?
      

  6.   

    Server.Transfer方法把执行流程从当前的ASPX文件转到同一服务器上的另一个ASPX页面。调用Server.Transfer时,当前的ASPX页面终止执行,执行流程转入另一个ASPX页面,但新的ASPX页面仍使用前一ASPX页面创建的应答流。       如果用Server.Transfer方法实现页面之间的导航,浏览器中的URL不会改变,因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行了一次页面变换。 Response.Redirect则是客户端第一次请求服务器返回状态代码302及新URL,客户端再次请求新URL,服务器再返回新页面,比Server.Transfer多一次应答。
      

  7.   

    使用frameset就可以了。
    你可以看看 bbs.csdn.net,你点左侧连接,右侧变化,但是地址栏是不变的。