facebox打开页面获取查询字符串

时间:2011-06-22 11:53:57

标签: asp.net html query-string facebox

我在页面mainpage.aspx“中我有这个代码:
<a rel="facebox" href="destination.htm?path=blabla">mainpage</a>
我使用facebox()加载destination.htm
问题是在我的destination.htm,当我试图点击警报(window.location.href)时,我得到的是mainpage.aspx而不是destination.htm.why?我想要做的就是从页面读取路径以获取查询字符串(但我得到了错误的路径)。
非常感谢

2 个答案:

答案 0 :(得分:2)

这是因为facebox实际上并没有将浏览器重定向到该页面,而是通过ajax获取并将其注入到同一页面上的facebox div中。

您可以尝试抓取锚点的href属性,可能类似于:

var lastVisited = null;
var lastVisitedQS = null;
$("a[rel='facebox']").facebox()
          .click(function() {
              lastVisited = this.href;

              // you can extract the query string like this
              var a = document.createElement('a');
              a.href = lastVisited;
              lastVisitedQS = a.search; // should give path=blabla
          });

然后在destination.htm执行:

alert(lastVisited);
alert(lastVisitedQS);

希望有所帮助!

答案 1 :(得分:0)

您可以使用window.location.hostname获取主机URL,使用window.location.pathname获取虚拟目录+页面,使用window.location.search获取URL的查询字符串部分