Как правильно связывать события в jQuery?
Например, в php у меня есть список клиентов:
foreach($clients as $client)
echo '<li id="client_'.$client->id.'">' . $client->name . '</li>';
Как правильно привязать событие щелчка к каждому элементу списка без использования
onclick="my_function(the_elements_id)"
Прямо в пункте списка.
2
4 answers
Предполагая, что у вас есть ul с идентификатором="список клиентов"
$("#client_list li").click(function()
{
var myid = $(this).attr("id"); // the clicked on items id
// do your thing here.
}):
4
Author: John Boker, 2009-11-10 14:16:28
И очень классный "живой" способ привязки для всех текущих и будущих согласованных элементов. Это удобно, если вы используете Ajax, и вам нужно повторно привязать событие, скажем, к изображению, которое вы получаете через ajax.
Дополнительная информация @ http://docs.jquery.com/Events/live#typefn
$("p").live("click", function(){
alert( $(this).text() );
});
4
Author: epitka, 2009-11-10 14:23:41
Вы также можете использовать .bind
Например,
$('#item').bind("click", function() { do something; });
1
Author: Jimmeh, 2009-11-10 14:18:59
$(document).ready(function(){
$("li).click(function(){
var id = $(this).attr("id");
your_function(id); //The function you want to run with the object's ID as a parameter.
});
});
0
Author: BraedenP, 2009-11-10 14:18:15