2009-11-10 91 views
2

例如,在PHP我有客户名单:在jQuery中绑定事件的正确方法是什么?

foreach($clients as $client) 
    echo '<li id="client_'.$client->id.'">' . $client->name . '</li>'; 

什么是点击事件绑定到每个列表项的w/o权列表中的项目使用

onclick="my_function(the_elements_id)" 

的正确方法。

回答

4

假设你有一个ID = “client_list” 的UL

$("#client_list li").click(function() 
{ 
    var myid = $(this).attr("id"); // the clicked on items id 
    // do your thing here. 

}): 
+0

真棒,谢谢 – ws0x9 2009-11-10 14:19:05

+2

'$(本).attr( “ID”)'是不是'this.id'高效。每个HTML对象都有一个'id'属性;你不需要jQuery来为你缓和这个问题。 – MightyE 2009-11-10 14:51:16

+0

好的,谢谢你的帮助 – ws0x9 2009-11-10 15:51:00

0
$(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. 
    }); 

}); 
1

您还可以使用.bind

例如

$('#item').bind("click", function() { do something; }); 
4

而且非常酷“活”对当前和未来所有匹配的元素结合的方式。如果你使用Ajax,这很方便,并且必须重新绑定事件,让我们说通过ajax获取的图像。

更多信息@http://docs.jquery.com/Events/live#typefn

$("p").live("click", function(){ 
    alert($(this).text()); 
}); 
+0

谢谢!新的jQuery和我感谢帮助。 – ws0x9 2009-11-10 14:25:29

+0

如果有任何机会在飞行中更改标记,那么生活就会很棒。这是一个授权的实施。 – Nosredna 2009-11-10 14:29:20

+0

今天使用它。很有用。感谢您的指导。 – ws0x9 2009-11-11 20:09:48

相关问题