2013-11-27 29 views
1

我使用PHP生成一些<input type="text" class="date" name="date'.$i.'">字段,其​​中$ i通过我使用的foreach函数递增。 所以我有这样的事情:使用jQuery中断属性

<input type="text" class="date" name="date1"> 
<input type="text" class="date" name="date2"> 
<input type="text" class="date" name="date3"> 

我使用jQuery .last()功能选择与date类的最后一个元素,但我需要找到一种方式来获得date后,从name属性这个数字。我知道我需要使用.attr()来获取名称,但我不知道如何分割它并获取号码。

+3

开始我会建议使用'数据'属性代替,所以你喜欢的东西'' –

+0

如何获取该索引并将其附加到变量? – Rawrrr1337

+2

使用'.data('index')' –

回答

3

这个正则表达式将只返回number var。 它适用于任何name

var name = $(this).attr("name"); 
var number = name.replace(/\d+/g, ""); 

注: 这工作时this等于$(".date").last();

0

尝试:

var name = "date1"; 
var number = name.replace(/date/g, ''); 

console.log(number); 

它从字符串中删除“日期”,让你与你想要的号码。

0
$('.date').last().attr('name').substr(4); 

但是,使用数据 - 的建议可能会更好。

0

那么,如果$i只是增量,你可以简单地使用集合的.length,而不是获取.last()的属性?

$('input.date').length //the desired value 

或者.length - 1,很显然,如果你从0