【发布时间】:2014-04-30 11:56:40
【问题描述】:
我有那个js函数
function searchRequest(months){
//base url
var protocol = window.location.protocol;
var siteUrl = window.location.host;
//get months and years 4 link
var yearToUrl = months.toString().substring(0,4);
var monthsToUrl = months.toString().substr(-2);
//calculating months days
var yearForDays = parseInt(yearToUrl);
var monthsForDays = parseInt(monthsToUrl);
var daysToUrl = 33 - new Date(yearForDays, monthsForDays-1, 33).getDate();
//add months days and year to link
var lastUrlPart = 'invoices/#_form=42422b080fbce04ec7f431ad4abe6f6495d8f7bf&view=search&predefined_search=2&invoice_date_from=01%2F' + monthsToUrl + '%2F' + yearToUrl + '&invoice_date_to=' + daysToUrl + '%2F' + monthsToUrl + '%2F' + yearToUrl;
//creating link
var redirectUrl = protocol + '//' + siteUrl + '/' + lastUrlPart;
window.location.href = redirectUrl;
}
在网站的其他页面上使用该链接应该启用搜索。但是重定向后它不起作用。此外,当我使用该 url 将光标设置为浏览器地址字符串并单击键盘搜索上的输入时,该链接正常工作。我该如何解决?我需要重定向后的结果。谢谢。
【问题讨论】:
-
尝试将生成的 redirectUrl 与预期结果(有效的链接)进行比较
-
链接等于。我之前检查过。
-
那么实际发生了什么? (..没用)
-
在我使用 window.location.href = my_link 和 my_link 之后,我的 get 请求没有工作。页面重新加载并且该链接出现在浏览器地址字符串(其正确的链接)中打开的页面,但搜索不起作用。然后我将鼠标光标放在带有 my_link 的地址字符串中,然后单击“输入”我可以看到所需的搜索结果。
-
仅更改哈希参数(在您的 url 中 # 后面的东西)确实会更改地址(-bar)但不会触发页面重新加载。 (在地址栏中输入时会发生这种情况)