jquery
2011-12-20 3 views 1 likes 
1
$(".eventer button[name=myBtn]").click(function() { 
console.log('clicked'); 
thisBtn = $(this); 
parent = $(this).parent(); 
num = parent.data('num'); 
id = parent.data('id'); 

if(typeof num != 'number'){ 
num = 0; 
} 
$(this).attr('disabled', true); 

$.post('javas.php', {num: (num-1), id: id}, function(data) { console.log('Ajax  success'); 

parent.next('.status').html(data); 
thisBtn.attr('disabled', false); // reset }); 





console.log('Ajax success'); 
parent.data('num', --num); 
parent.next('.status').html(data); 
thisBtn.attr('disabled', false); // reset 
}); 
}); 


console.log('-- end'); 

}); 

Как получить идентификатор класса, на который был нажат, это то, что у меня есть до сих пор, я хочу отправить идентификатор сообщения вместе со значением num (уже послан). Как бы я это сделал, спасибо за любую помощь!Получение идентификатора класса

+0

Использовать 'this.id' внутри вашего обработчика? –

ответ

6

Чтобы получить идентификатор, просто сделать var id = this.id;

EDIT: $(this).attr('id') также работает, но почему это трудный путь? this.id чисто Javascript

+0

, где бы я поместил это в свой код? – foshoeiyyy

+0

+1 - красивый и чистый :) –

+0

Внутри вашего обработчика. Поместите его после (например) 'console.log ('clicked'); ' – OptimusCrime

1

Вы можете просто получить идентификатор из атрибутов:

var theId = $(this).attr("id"); 
0

Использование attr функции:

id = $(this).attr('id'); 
+0

Asker хочет ID;) –

+0

Да, исправлено;) – matino

+0

@MyHeadHurts ..., который вернет id. Но это чрезмерное использование jQuery. Может быть сделано без использования jQuery. – OptimusCrime

0

Хотя атрибут класса в тег называется 'класс', в JavaScript 'класс' является зарезервированным ключевым словом, следовательно, вы должны использовать:

$(this).attr('className') 
Смежные вопросы