即vs chrome window.location.href和<base />标签

时间:2013-12-01 09:12:40

标签: javascript jquery html redirect window.location

点击<td>时,我遇到了将javascript重定向到其他页面的问题。对于我的网站,我使用<base href="">标记作为我的链接的起点。

请考虑以下代码:

<!doctype html>
<html lang="en"><head>
    <meta charset="utf-8"/>
<title>Login</title>
<base href="http://www.mysite.com/MyWebsite/manage/" />

<base href="http://www.mysite.com/MyWebsite/manage/" />

的特别参考

并考虑这个jQuery:

//Set row clicking
    $('table#alerts_table').on("click", "td", function () {
        var alert_id = $(this).closest('tr').find('input[type=checkbox]').val();
        var href = 'alerts/alert.php?id=' + alert_id;
        if (href) { window.location.href = href; }
    });

的特别参考
var href = 'alerts/alert.php?id=' + alert_id;
if (href) { window.location.href = href; }

并且考虑到我在网站上的当前位置已经在名为alert的文件夹中,如下所示: http://www.mysite.com/MyWebsite/manage/警报的index.php

我想从index.php转到alert.php。

在Chrome上,所有工作都按预期工作,即基本href http://www.mysite.com/MyWebsite/manage/连接到alerts/alert.php?id=1,我会被重定向。

然而在IE中 文件夹提醒加倍:http://www.mysite.com/MyWebsite/manage/ 提醒/提醒 /alert.php?id=1

这意味着它没有从基本标记中获取基本URL,而是使用相对路径。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

你可以使用:

   document.location.replace(); 

功能。您不需要使用基本选项。它将被重定向到同一目录中的页面或子目录。