Asp classic 我可以替换ASP(经典)包含中的内容吗?

Asp classic 我可以替换ASP(经典)包含中的内容吗?,asp-classic,vbscript,Asp Classic,Vbscript,假设我在应用程序的左侧有“默认”内容,它包含在一个标题页中:一个搜索框和一个登录框。如果用户在搜索页面上,我还想在页面左侧添加搜索过滤器列表(例如品牌、价格);在这种情况下,左侧需要访问为搜索提供的参数(例如“黑皮椅”的关键字搜索);我在搜索页面上建立了一个相当复杂的查询,search.asp,我不想在左侧内容页上用某种巨大的If..Then语句重复它 有没有办法做到这一点,并将其他内容“附加”到已包含在页面中的文件中?基本上类似于RubyonRails中的content_,我可以在本页上说,将

假设我在应用程序的左侧有“默认”内容,它包含在一个标题页中:一个搜索框和一个登录框。如果用户在搜索页面上,我还想在页面左侧添加搜索过滤器列表(例如品牌、价格);在这种情况下,左侧需要访问为搜索提供的参数(例如“黑皮椅”的关键字搜索);我在搜索页面上建立了一个相当复杂的查询,
search.asp
,我不想在左侧内容页上用某种巨大的
If..Then
语句重复它


有没有办法做到这一点,并将其他内容“附加”到已包含在页面中的文件中?基本上类似于RubyonRails中的content_,我可以在本页上说,将这些东西添加到
节点。我不是一个真正的经典ASP专家(老实说,我不想使用它),但我的老板希望页面左侧的过滤器只用于搜索页面,以及登录/搜索框(也出现在所有页面上)我不知道如何在不重新构建整个页面的情况下处理它。

您可以轻松地在左侧设置一个包含所需内容的div,然后使用客户端javascript切换div的可见性

您的javascript可以检查当前位置,如果它在它希望该部分显示的页面列表中(如果您构建了另一个搜索页面),则将可见性切换为true

如果您根本不想在左侧呈现HTML,那么可以使用Javascript将HTML动态写入DIV


或者,您可以在搜索页面中设置一个DIV,并使用CSS将其与页面左侧对齐。

在ASP中,您可以使用以下内容获取当前路径和文件:

pagePath = Request.ServerVariables("PATH_INFO")
您可以拆分字符串,获取最后一个元素。因此,请选择一个案例,并根据文件名吐出相应的内容:

select case pageName

case "search.asp"
   ...
case "products.asp"
   ...
case else
   ...
end select

任何include都可以使用以前函数中收集的变量。例如,如果先检索搜索关键字,则可以更新以后出现的任何代码中的值,即使是包含文件中的值,因为这些包含文件毕竟只是包含在整个页面中的更多代码,但由于其他页面可能共有这些代码,因此已包含在插入中

也可以运行函数来处理这些变量,例如查找相关结果