将搜索参数添加到 url 以启用从地址栏直接搜索
本文关键字:搜索 地址栏 启用 url 参数 添加 | 更新日期: 2023-09-27 18:32:20
我有几个旧站点想要添加路由参数。它们是在不使用 mvc 的情况下编码的,因此没有具有方便的 MVC 设置的 global.asax。
目前,我有一个带有具有搜索功能的网址 abc.com/xyz 的页面。我可以输入一个查询,它将我发送到另一个页面,但它具有相同的URL。我想这样做,如果我放置网址abc.com/xyz?search='what_You_Query'的一些变体,它会给我搜索的页面。现在,该网址将我发送到我输入查询的页面。
该网站以 C# 和 html 编码,并保存在 aspx 文件中。网页还使用jscript。
我将不胜感激我能得到的任何帮助
编辑:似乎有一些混乱,有一个搜索框允许用户在网页上查询。我想要的是允许用户直接链接到搜索的页面。
您需要
在页面加载时捕获它 - 检查查询字符串 (https://msdn.microsoft.com/en-us/library/ms524784%28v=vs.90%29.aspx),如果其中有搜索,请重定向到搜索页面。
修改以包含更多详细信息
我假设您使用 Web 表单(Microsoft MVC 的替代品)。 您需要添加服务器端 (http://www.seguetech.com/blog/2013/05/01/client-side-server-side-code-difference) Page_Load事件 (https://msdn.microsoft.com/en-us/library/6w2tb12s.aspx)。 那里的代码看起来像这样:
protected void Page_Load(object sender, EventArgs e)
{
if(Request.QueryString["search"] != null)
Response.Redirect("/search?" + UrlEncode(Request.QueryString["search"]), true);
}
请注意,我还没有测试代码,并且在这里有点记忆 - 但这应该可以解决问题。