首页 新闻 会员 周边 捐助

asp.net mvc3 url添加锚记后 页面刷新 #后面的部分丢失是为什么

0
悬赏园豆:5 [已解决问题] 解决于 2015-05-19 10:40

查看了request里的内容也没发现把锚记带过来  ....

没有园豆了.....

lingjie-qiu的主页 lingjie-qiu | 初学一级 | 园豆:1
提问于:2015-05-19 09:57
< >
分享
最佳答案
1

url是如何添加的?

收获园豆:5
dudu | 高人七级 |园豆:30925 | 2015-05-19 10:01

/AAAA/BBBB_7523.html#hotelcnt 这样

然后跳转之后就是  /AAAA/BBBB_7523.html#

重写是这样的

routes.MapRoute(
"Hotel/JiuDianNew", 
"jiudian_{hotelId}.html", 
new { controller = "HotelQuery", action = "HotelDetailNew", id = UrlParameter.Optional } 
, new string[] { "TCWireless.Touch.Controllers.Hotel.Hotel" }
);

 

我调试看了下Request.Url.Fragment  是空

lingjie-qiu | 园豆:1 (初学一级) | 2015-05-19 10:06

@我不是码农啊: 这与路由没有关系,锚点部分是不会发送给服务器的。问题要么出在html代码中,要么出在js代码中。

dudu | 园豆:30925 (高人七级) | 2015-05-19 10:15

@dudu: 那为什么url中的#后面会被过滤啊....

页面加载完然后再加上#hotelcnt  锚记就生效了

然后再刷新就又没了

lingjie-qiu | 园豆:1 (初学一级) | 2015-05-19 10:17

@我不是码农啊: 最好能将相关html/js代码贴出来

dudu | 园豆:30925 (高人七级) | 2015-05-19 10:19

@dudu: http://m.ly.com/hotel/jiudian_167253.html#uid

就是这个页面  因为外网没法访问测试地址  所以用隐藏域的id做例子

 

PS 我不是做广告呀

lingjie-qiu | 园豆:1 (初学一级) | 2015-05-19 10:22

@我不是码农啊: 锚点中的内容是却页面中的js干掉的

dudu | 园豆:30925 (高人七级) | 2015-05-19 10:31

@dudu: = =.....( ⊙ o ⊙ )啊!

看来只能加一个参数 给js去处理了

lingjie-qiu | 园豆:1 (初学一级) | 2015-05-19 10:38
其他回答(2)
0

那你在页面加载的时候,重新添加锚记啊

隔壁老王来了 | 园豆:99 (初学一级) | 2015-05-19 10:03
0

 document.location.hash

SoarNo1 | 园豆:195 (初学一级) | 2018-03-22 18:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册