2012-04-17 2 views
0

Я пытаюсь получить класс элемента с щелчком, например. '.thumbs1' и установите его как переменную, но удалите все, кроме числа «1».Класс фильтра JQuery и задан как переменная

Я нашел способ удалить все, кроме номера, используя следующий код, но я не знаю синтаксиса, чтобы хранить его как переменную.

$(this).attr('class').replace(/[^\d]/g, ''); 

Я хочу сделать что-то вроде:

var i = $(this).attr('id').replace(/[^\d]/g, ''); 

Это, очевидно, неправильно, но вы получите идею. Ta

+0

Почему 'вар я = $ (это) .attr ('ID'). Заменить (/ [^ \ d]/g, ''), 'неправильно? это выглядит хорошо для меня! (за исключением того, что вы написали там 'id' вместо' class' ...) – gdoron

ответ

0

Почему бы не использовать вместо этого атрибут data? Это та вещь, они были разработаны для:

<a href="#" data-id="1" class="thumbs">#1</a> 
<a href="#" data-id="2" class="thumbs">#2</a> 
$(".thumbs").click(function() { 
    var id = $(this).data("id"); // = 1 or 2 in this case 
}); 

Попытка разобрать id атрибуты или class имена, чтобы получить на значения, хранящегося в них очень контрпродуктивным, так как вы теперь открывать ,

+0

Это сработало отлично. – jimbouton

0

Нет, что правильно вы пытаетесь

var id = $("div").attr('id').replace(/[^\d]/g, ''); 

или проверить это Page

+0

Я использовал метод .data ниже. – jimbouton

+0

вы должны попробовать это, и если это правильно, сделайте комментарий здесь. –

Смежные вопросы