2010-04-16 113 views
1
<script type="text/javascript"> 
$(document).ready(function() { 
    $("a").click(function() { 
     $("#results").load("jquery-routing.php", { pageNo: $(this).text(), sortBy: $("#sortBy").val()}); 
     return false; 
    }); 
});  
</script> 

    <div id="results"> </div>  
<a href="jquery-routing.php?p=1">1</a> 
<a href="jquery-routing.php?p=2">2</a> 

该代码工作正常,只有问题,我运行后,我所有的一个href链接停止工作!链接变成jquery ajax调用..为什么?jQuery的问题,jQuery接管页面上的所有链接

+0

如果你的目的是要执行这个load()方法,只要点击任何链接,那么里昂是正确的;否则,其他人都是正确的:)(可能) – harpo 2010-04-16 03:56:19

回答

0

要定位特定链接,请在锚标签上使用id或class标签。 例如

<a class="link1" href=""></a> 
<a id="link2" href-""></a> 

请注意,id标签在页面内是唯一的,只能使用一次。 参考那些jQuery中使用链接:

$('a.link1').click(function() {} 
$('#link2').click(function() {} 

,也可混合两种:

$('a.link1, #link2').click(function() {} 

你需要做的是分配一个ID或类标签,将调用Ajax请求的链接。例如。 <a class="ajax" href="">ajax</a>并引用它$('a.ajax').click(function() {}

+0

这需要覆盖默认链接下面的行为与所需的ajax调用,而不是。 – Tom 2010-04-16 03:53:59

+0

更正。谢谢汤姆。误读维克的问题。 :) – Lyon 2010-04-16 03:58:58

1

$("a")选择所有<a ...>标签相匹配,则需要将其更改为更具体的东西:

$("a#someid") 
$("a.someclass") 
$("div#somecontainer a") 
0

您的设置页面上的所有锚标签的onclick事件。尝试只选择你想要的链接而不是更一般的$(“a”)

0

您的选择器$(“a”)表示您的页面中的所有hiperlink。

你可能需要给hiperlink一个特定的id,你希望你的ajax调用工作,然后根据它改变选择器。

例如:

<a id= "my-link" href="" >ddd</a> 

$("a#my-link").click() 
+0

没有工作得很好? – vick 2010-04-16 04:01:23

+0

好的,那很好用! 1 我该如何在默认情况下加载第一页? – vick 2010-04-16 04:14:08

+1

我觉得类比Id更好,因为他有多个超链接 – 2010-04-17 17:05:00