2012-03-28 142 views
10

我是新来的JQuery/javascript等等......基于以下文章: How to make an anchor tag refer to nothing?如何选择多个元素与jQuery

我想在Java功能应用到几个ID的。我们不能让这个函数执行类而不是id吗?

<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 
<span class="style1" id="myid">Link</span> 

$('myid').click(function() { 
    /* put your code here */ 
}); 

基本上如上,我怎么执行上述所有环节的功能?这可能吗?提前致谢。

+1

什么联系呢?我在你的标记中看到的全部是''...... – 2012-03-28 17:38:26

+3

ID **必须是唯一的。 – 2012-03-28 17:38:59

+1

'id's在文档中必须是唯一的,您不能拥有具有相同'id'的元素。 – jmoerdyk 2012-03-28 17:39:47

回答

11

使用以下

$('.style1').click(function() {  
    /* put your code here */ 
}); 

这增加了点击处理程序包含style1类的所有元素。您不应该有重复的ID

+0

谢谢!就这么简单! – RiceBucket 2012-03-29 09:27:34

2

首先,ID应该是唯一的。你不应该有多个具有相同ID的元素。

要在jQuery中使用ID进行选择,请使用#字符。 $('#myid')。这将得到与该ID的第一个元素,因为应该只有一个(你可以通过做$('[id="myid"]')有点欺骗,以获得具有相同ID的多个元素)。

我建议使用一个类来选择所有的链接。类使用.字符进行选择。

$('.style1').click(function(){}); 
+0

谢谢澄清! – RiceBucket 2012-03-29 09:27:46

21

你应该命名ID唯一,

<span class="style1" id="myid1">Link</span> 
<span class="style1" id="myid2">Link</span> 
<span class="style1" id="myid3">Link</span> 
<span class="style1" id="myid4">Link</span> 
<span class="style1" id="myid5">Link</span> 

然后使用此代码

$('#myid1,#myid2,#myid3,#myid4,#myid5').click(function() { 
    /* put your code here */ 
}); 
+1

我建议'$(“。style1”)。click(function(){// whatever});' – think123 2012-07-31 10:05:45

+2

+1这回答了原来的问题,但在这种情况下,一个类选择器可以完成这项工作。 – GoodSp33d 2013-06-10 12:47:53