我正在试图找出我在这里做错了什么 - 如果我访问我试图直接加载jquery的URL,内容加载正常。但是当我使用jquery时,没有任何东西加载,尽管控制台报告成功加载。这是我的代码:
<div id="bio_switcher">
<a href="[removed]void(0);" class="alix active" data-ident="alix_lambert">Alix Lambert</a>
<a href="[removed]void(0);" class="david" data-ident="david_mcmahon">David McMahon</a>
</div>
<div id="bio_container">
</div>
$('#bio_switcher a').click(function(){
$('#bio_container').load('/index.php/ajax/bios/2',showContent);
});
INDEX.PHP / AJAX / BIOS / 2:
{exp:channel:entries channel="bios" limit="1" {if segment_3 !=""} url_title="{segment_3}"{/if}}
<div id="bio_content">
{bio_content}
</div>
<div id="bio_photo">
<img src="{bio_photo}" alt="{title}" />
</div>
{/exp:channel:entries}
任何想法都将不胜感激。谢谢!
答案 0 :(得分:1)
两个想法:
确保锚点不会导致浏览器获取新页面,从而只重新加载没有内容的页面。执行此操作的最佳方法是不返回false,而是在顶部使用preventDefault。
$('#id').click(function(evt){
evt.preventDefault();
//do the other stuff
});
如果这不能解决问题,请开始简化问题。删除加载功能中的回调。简化正在加载的内容(删除模板内容)。
希望这有帮助。
鲍勃