jQuery .load():点击时加载div

时间:2011-07-01 14:19:07

标签: javascript jquery events load click

我想在单击图像时实现这一点,在这个图像所在的div中,加载了另一个.html的其他内容的div,但是我无法完成它。

如果我这样做,以下,它完美地运作:

$('#windows_link').click(function(){
        $('#apps_container').html("Hi!");
    });

但如果我做以下情况,它就不起作用;它实际上没有做任何事情:

$('#windows_link').click(function(){
        $('#apps_container').load('windows_apps.html #apps_container');
    });

请帮忙吗?

提前多多感谢!

2 个答案:

答案 0 :(得分:3)

当您在本地时,任何其他HTML路径在某些浏览器中被视为另一个域(Chrome位于列表中)。这意味着.load()会阻止您尝试的任何AJAX请求(same origin policy下面的内容)。

你所拥有的东西可能会正常工作......只是不在本地,在Chrome中。

您可以通过在Firefox等其他浏览器中进行测试,或通过启动chrome with a command line switch来禁用此安全功能(进行测试!,之后将其关闭)来验证这一点:

chrome.exe --disable-web-security

答案 1 :(得分:0)

如果第一次尝试正常,我认为问题在这里

.load('windows_apps.html #apps_container');

当您点击链接时,您是否在firebug或调试控制台的.net面板中看到了一个电话(ajax调用是否成功完成)?

windows_apps.html是否在调用它的页面脚本的同一文件夹中?

在该页面中是否有一个名为apps_container的div?