使用jQuery函数.load()时出现问题

时间:2012-06-20 21:37:15

标签: javascript jquery ajax

我在我的网站上遇到问题,我试图将PHP文件的内容加载到<div>。我已经排除了它是服务器端问题的可能性,所以这引出了我的问题。你能找到以下代码有什么问题吗?

<script>
$('.navigation .responsive .menu ul li a').click(function()
{
    var toLoad = $(this).attr('href');
    $(".content").load(window.location.host + "/index.php?url=" + toLoad);
});
</script>

我知道出于安全原因,浏览器不允许.load()从外部域加载内容;但是,使用window.location.host是一个问题,因为它是同一个域吗?

2 个答案:

答案 0 :(得分:2)

window.location.host仅包含必需的主机名,而不是协议。也包括在内:

$(".content").load(window.location.protocol + '//' + window.location.host + "/index.php?url=" + toLoad);

当然,你可能根本不需要那个;领先的/将为您提供绝对网址:

$(".content").load("/index.php?url=" + toLoad);

答案 1 :(得分:1)

尝试使用window.location.hostname,因为window.location.host还包括端口号,有时还包括其他字符