jQuery Ajax加载div问题

时间:2011-03-28 15:47:35

标签: jquery ajax xhtml

我对jQuery Ajax有点想法。我的问题是:如果我使用jQuery Ajax将HTML的一部分加载到div中,如下所示:

$('#result').load('ajax/test.html #container');

用户是否必须下载整个test.html才能查看#container div的内容?换句话说,是否会下载整个test.html文件,然后解析为只选择#container div,或者只下载#container div?如果第一次发生,您是否可以想到只下载#container div而不创建新的html文件?

非常感谢您的投入! :)我真的很感激。

3 个答案:

答案 0 :(得分:3)

请参阅:http://api.jquery.com/load/

  

$('#result')。load('ajax / test.html #container');

     

当此方法执行时,它   检索内容   ajax / test.html ,然后 jQuery解析   返回的文件找到了   ID为容器的元素。这个   元素及其内容是   插入带有ID的元素   结果,和其余的   检索到的文件被丢弃

答案 1 :(得分:3)

当然会下载整个HTML。

如果你想避免这种情况,你必须创建某种服务器端脚本,例如PHP,它只发送所需的内容。

您可以使用类似

的方式调用它
$('#result').load('ajax/test.php?ajax=1');

并在PHP中检查是否存在$_GET['ajax'],如果存在,则仅发送#container div。

答案 2 :(得分:1)

将下载整个页面。在jQuery具有内容后,它会解析它以找到适当的选择。见Docs for jquery load

  

当此方法执行时,它   检索。的内容   ajax / test.html,但随后jQuery解析   返回的文件找到了   ID为容器的元素。这个   元素及其内容是   插入带有ID的元素   结果,其余的   检索到的文件被丢弃。