首页 > 解决方案 > 带有参数的href链接到不同页面中的书签

问题描述

我在我的网站上从一个页面链接到另一个页面。链接是这样的: -

https://example.com/cgi-bin/dashboard/product_catalogue.pl?action=search_by_category&category=kitchen  

在下面的脚本中,我的页面部分有这样的书签 id

<p id='12345'>text in here</p> 

我似乎无法确定将书签触发器放在 href 中的哪个位置。

我努力了:

https://example.com/cgi-bin/dashboard/product_catalogue.pl?action=search_by_category&category=kitchen#12345 

https://example.com/cgi-bin/dashboard/product_catalogue.pl#12345?action=search_by_category&category=kitchen#12345 

甚至重组了整个链接:

    https://example.com/cgi-bin/dashboard/product_catalogue.pl#12345/search_by_category/kitchen

没有工作。
#12345 似乎断开了超链接的其余部分,因此生成下一页的脚本不会接收到参数。

[我正在努力实现的目标]

在包含服务器生成页面的仪表板中,我有一个产品目录。例如https://example.com/dashboard/product_catalogue?search_type=search_by_category&category=kitchen

这列出了该类别中的项目 在特定项目(该项目的照片)上,我单击以转到显示该项目的所有图像的服务器生成的页面。(允许版本/上传等)“返回”按钮,它是 product_catalogue.pl 脚本的一个 href,可以工作,我想添加一个书签,所以当我们进入产品目录时,它会跳转到相同的列表/我们在去图像页面之前最后到达的地方。我希望这是有道理的。

[/结尾]

标签: html

解决方案


URI 中元素的顺序是:

  1. 协议 (https)
  2. 主机(example.com)
  3. 路径(/cgi-bin/dashboard/product_catalogue.pl
  4. 查询 (?action=search_by_category&category=kitchen)
  5. 片段 (#12345)

所以你的第一个例子是正确的:

https://example.com/cgi-bin/dashboard/product_catalogue.pl?action=search_by_category&category=kitchen#12345

你说:

#12345 似乎断开了超链接的其余部分,因此生成下一页的脚本不会接收到参数。

这是正确的。片段处理全部在客户端完成。服务器根本不需要知道片段。我很确定浏览器不会将其发送到服务器。

事件的顺序是这样的:

  • 您点击包含片段的链接
  • 浏览器删除片段并将剩余的地址发送到服务器
  • 服务器返回一些 HTML
  • 浏览器显示页面,定位使得片段中给定 id 的元素尽可能靠近窗口顶部

如果您希望该片段可用于服务器端进程,那么恐怕您不走运。这不是它的工作原理。

但是,如果您解释了您实际想要实现的目标,那么我确信这里的某个人将能够帮助您。


推荐阅读