在枚举列表中的按钮上使用jquery

问题描述:

我有一个视图,它将在枚举模型中的每个项目时列出一个表格。 我需要添加一个按钮到每一行。 我需要想要一个jQuery的函数绑定到每个按钮来显示单击时的警报。该文本将根据所点击的行项目而不同,因此我必须知道该编辑按钮在哪个行中被点击。 确实有意义吗?我该怎么做?在枚举列表中的按钮上使用jquery

所以这里是我

<table> 
<% foreach (var item in Model) 
     { %> 
<tr> 
<td><%=Html.encode(item.id) %></td> 
<td><%=Html.encode(item.id) %></td> 
<td><button id="button<%=item.id%>">select<button> 
</tr> 
<%}%> 
</table> 

类似的东西。我如何尝试每个按钮的jQuery功能。这可能吗? 谢谢!

+0

警报文本来自哪里,在该表格的其他位置? – 2010-06-25 21:29:16

未经测试,但应该工作:

$(function){ 
    $('[id^=button]').click(function(){ 
     var itemId = $(this).attr('id').substring(6); 
     alert(itemId); 
    }); 

} 

基本上你单击事件添加到具有与按钮开始一个id的一切。并且您获取该项目的id,但从按钮id属性获取子字符串。

+0

[id^= button] 很好知道。我有很长的路要去掌握jQuery。 完美工作。谢谢! – twal 2010-06-25 22:01:30

+0

很高兴帮助! – Patricia 2010-06-28 13:21:50

以下将查找表中具有以'按钮'开头的ID的所有按钮。根据你的例子,这将找到你所有的数据绑定按钮,并附上一个onclick处理程序,它将显示一个警报,显示按钮的唯一ID。

$('table tr td button[id^=button]').click(
function (e) { 
alert($(this).id); 
e.preventDefault(); 
}); 

然后您可以修改此以适合您的需求。

+0

谢谢你。这是非常好的知道! – twal 2010-06-25 22:02:35

+1

@twal:你应该特别注意选择器的选项,因为在研究如何获得某些元素时,它们往往使事情变得更容易。 http://api.jquery.com/category/selectors/ [ID $ =键] - 以 '按钮', 结束[ID =按钮!] - 是不是 '按钮', [ID * =按钮] - 包含“按钮”, – 2010-06-25 22:34:07