【发布时间】:2011-01-31 17:46:14
【问题描述】:
我正在快速将 ASP.NET Web 应用程序项目从 1.1 移植到 2.0。因此,模板被创建为自定义控件,而不是母版页。侧面板中有一个搜索框,可从网站的每个页面访问。该面板包含名字和名字的两个文本框。
将搜索参数作为查询字符串提交后,用户将被转移到 mysite.com/search/results.aspx。问题在于,根据用户提交的路径,可能会出现如下搜索:
mysite.com**/dir1/dir2**/search/results.aspx
我需要从根解决它,看起来 JS 位置对象是问题。
这是原始代码。如何构建从根目录解析的链接?
rightGutter.Controls.Add(new LiteralControl("<script language=javascript>"));
rightGutter.Controls.Add(new LiteralControl
("function doPhoneSearch(txtval,txtVal1) {"));
rightGutter.Controls.Add
(new LiteralControl("location.replace
('search/results.aspx?lnamedpco=' + txtval+'&fname='+txtVal1);"));
rightGutter.Controls.Add(new LiteralControl("txtval=\"\";"));
rightGutter.Controls.Add(new LiteralControl("return false;"));
rightGutter.Controls.Add(new LiteralControl("}"));
rightGutter.Controls.Add(new LiteralControl("</script>"));
HtmlTableCell rightCell8 = new HtmlTableCell();
rightCell8.Attributes.Add("align", "right");
rightCell8.Controls.Add
(new LiteralControl
("<a onClick=\"doPhoneSearch(document.getElementsByName
('lnamedpco')[0].value,
document.getElementsByName('fname')[0].value)\">"));
Image bgImage5 = new Image();
bgImage5.ImageUrl = "~/images/gobtn.gif";
bgImage5.Attributes.Add("runat", "server");
rightCell8.Controls.Add(bgImage5);
rightCell8.Controls.Add(new LiteralControl("</a>"));
<a onClick=\"doPhoneSearch(document.getElementsByName('lnamedpco')[0].value,
document.getElementsByName('fname')[0].value)\">
<img SRC=\"http://mysite/images/gobtn.gif\"
BORDER=\"0\" ALT=\"Submit Form\">
</a>
【问题讨论】:
标签: javascript asp.net