Else if, URL redirection

2019-09-20 03:40发布

So I am using this current script below:

<script type="text/javascript">
if (window.location.href.indexOf('thevault') > -1) {

//window.location = 'http://thevault.co.uk/index.phtml?d=512060’;
window.location = '/index.phtml?d=512060';

} else {

//window.location = 'http://www.jths.co.uk/index.phtml?d=541300';
window.location = '/index.phtml?d=541300';

}
</script>

Which works fine, however I want to add another condition

if the url is: http://www.nationalforestteachingschool.co.uk , then go to this page:

https://thevault.jths.co.uk/index.phtml?d=550968

I have tried the else if command but can't seem to get it working, this needs to be in one continous script, any ideas??

2条回答
我欲成王,谁敢阻挡
2楼-- · 2019-09-20 03:57

Please have a look at W3Schools site.

If...else if...else Statement

if (condition1)
{
  code to be executed if condition1 is true
}
else if (condition2)
{
  code to be executed if condition2 is true
}
else
{
  code to be executed if neither condition1 nor condition2 is true
}

You can chain many else if blocks if you need to..

Consider using the Switch statement as well.

查看更多
Emotional °昔
3楼-- · 2019-09-20 04:16

I made this small script to avoid having too many if / else statements, basically you define all your checks and redirects in the beginning and then let the script loop through them:

http://jsfiddle.net/XYaFg/1/

var Redirects = function(currentUrl) {

    var urls = [
    {
        check : 'thevault',
        redirect : 'http://thevault.co.uk/index.phtml?d=512060'
    },

    {
        check : 'fiddle',
        redirect : 'http://another-url-to-redirect-to.html'
    },

    {
        check : 'last-url-check',
        redirect : 'http://some-more-redirect.html'
    },
];

    this.init = function() {
        var length = urls.length;

        for ( var i = 0 ; i < length ; i++) {
            var current = urls[i];
            if( currentUrl.indexOf(current.check) > -1) {
                alert("Redirecting to " + current.redirect);
                //window.location = current.redirect
            }
        }
    }
    this.init();
}

var redirects = new Redirects(window.location.href)

You have to uncomment the "window.location" row and comment out the "alert" stuff

查看更多
登录 后发表回答