我的网站有 AJAX 支持的搜索,它使用深度链接。当用户点击链接时...
http://example.com/articles#/?tags=Mac%20OS,review
…标签“Mac OS”和“评论”应该已经在搜索表单中选择,并且与“Mac OS”和“评论”相关的文章应该显示在页面上。
我有以下情况,需要修复
- 用户点击链接http://example.com/articles#/?tags=Mac%20OS
- 在初始页面渲染期间,将获取所有文章
- 在客户端,哈希部分被解析,并且仅通过 AJAX 请求与“Mac OS”相关的文章。
- 客户端接收“Mac OS”文章并替换在步骤 2 中获取的所有文章。还将“Mac OS”标签标记为在搜索表单上选择。
这里的问题是重复的文章渲染,这对用户来说看起来非常糟糕。他查看了所有文章,几秒钟后,它们将被替换为“Mac OS”文章。
我需要有以下场景:
- 用户点击链接http://example.com/articles#/?tags=Mac%20OS
- 服务器解析 hash-part 并返回“Mac OS”相关文章
- 客户明白,“Mac OS”文章已经在那里,但什么也不做。它只是将“Mac OS”标签标记为已选择。
为此,我需要获取请求字符串的哈希部分:
/?tags=Mac%20OS
我无法在 ? 之后使用请求参数,因为我使用 AJAX 和深层链接。使用 ?-part 时,浏览器将被迫重新加载页面。我需要做任何事情而不重新加载页面。
我们将不胜感激您的帮助。
Thanks.
哈希值之后的 URL 部分不会发送到服务器,因此您无法在那里对其进行处理。您可以在创建 Ajax 请求的客户端代码中提取 URL 的部分并将其作为参数发送。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)