在id attr中的click函数中传递参数

时间:2014-04-17 13:07:00

标签: javascript jquery html

我有以下标记:

<div id="div1" class="divs">some content</div>
<div id="div2" class="divs">some content</div>
<div id="div3" class="divs">some content</div>
<div id="div4" class="divs">some content</div>
<div id="div5" class="divs">some content</div>
<div id="div6" class="divs">some content</div>

他们都得到一个简单的.click()函数:

$divs = $('.divs');
$divs.click(function() {
  // some actions
}

我想要做的是在.click()函数中传递一个参数,该参数为我提供每个id的当前数量,例如id="div1的整数1。类似的东西:

 $divs.click(function(e) {
  // e would be the number of the id inside the function
}

我怎么能这样做?

提前致谢!

3 个答案:

答案 0 :(得分:3)

您可以在简单的正则表达式中使用 .match() 来获取ID号:

$('.divs').click(function() {
    var id = this.id.match(/\d+$/);
    console.log(id);    
});

<强> Fiddle Demo

答案 1 :(得分:2)

您可以使用$(this).index()+1

$divs.click(function() {
   alert($(this).index()+1);
});

答案 2 :(得分:0)

我会推荐attr()

$('.divs').click(function()
{
  var id = $(this).attr('id').match(/\d+/);
  alert(id);
});