我如何在javascript中添加一些东西来检查网站上某人的网站网址,然后重定向到网站上的某个页面,如果找到了匹配项?例如......
我们想要检查的字符串是mydirectory,所以如果有人转到mysite.com/mydirectory/anyfile.php
甚至mysite.com/mydirectory/index.php
,javascript会将其网页/网址重定向到mysite.com/index.php
,因为它有url中的mydirectory,否则如果找不到匹配项,请不要重定向,我正在使用下面的代码...
var search2 = 'mydirectory';
var redirect2 = 'http://mysite.com/index.php'
if (document.URL.substr(search2) !== -1)
document.location = redirect2
问题在于,它总是重定向到我,即使找不到匹配项,有没有人知道出了什么问题,是否有更快/更好的方法来做到这一点?
答案 0 :(得分:2)
改为使用String.indexOf():
if (window.location.pathname.indexOf('searchTerm') !== -1) {
// a match was found, redirect to your new url
window.location.href = newUrl;
}
答案 1 :(得分:0)
substr
不是您在这种情况下所需要的,它从字符串中提取子字符串。而是使用indexOf
:
if(window.location.pathname.indexOf(search2) !== -1) {
window.location = redirect2;
}
如果可能,最好在服务器端进行此重定向。它将始终有效,更适合搜索引擎和更快。如果您的用户禁用了JavaScript,则不会重定向。