如何在用户点击链接时将网页加载到div中?

时间:2011-04-14 21:54:10

标签: jquery html

我正在使用jquery,我正在寻找用户点击链接并在链接所在的同一div中加载服务器响应(在这种情况下是一行确认)。我已经过去了围绕这个,似乎无法正确。以下是我在本网站上另一篇文章中的代码,该帖子类似但不够接近我不能理解......

<a href="http://10.0.1.2:8888/?ACT=24&tag_id=8" class="load_link">Add to Watchlist*</a>

<script type="text/javascript">
(function($) {  
  $(function() {  
     $('.load_link').click(function() {  
        $(this).next('div').load(this.href);  
        return false;  
     });  
  });  
})(jQuery); 
</script>

任何想法我做错了什么?

由于

3 个答案:

答案 0 :(得分:1)

如果锚被包装在div中,并且您想在此div中加载响应,则可以使用.closest()方法:

<div>
    <a href="http://10.0.1.2:8888/?ACT=24&tag_id=8" class="load_link">Add to Watchlist*</a>
</div>

然后:

$(this).closest('div').load(this.href);  

如果锚附近有div:

<a href="http://10.0.1.2:8888/?ACT=24&tag_id=8" class="load_link">Add to Watchlist*
<div></div>

然后.next()方法应该有效。

答案 1 :(得分:1)

如果您将内容加载到包含div中,则链接将被替换 因此在主div中添加一个span / div,它包含链接并使用此子span / div来加载内容。

e.g:

<div>
    <span class="content"></span>
    <a href="http://10.0.1.2:8888/?ACT=24&tag_id=8" class="load_link">Add to Watchlist*</a>
</div>

<script type="text/javascript">
(function($) {  
    $(function() {  
         $('.load_link').click(function() {  
                $(this).siblings(".content").load(this.href);  
                return false;  
         });  
    });  
})(jQuery); 
</script>

答案 2 :(得分:0)

起点是安装Firebug并输入调试会话,以便您可以单步执行代码。您还想在document.ready()上进行绑定,以确保在DOM准备就绪后进行绑定。