Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/376.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将javascript应用于所有按钮_Javascript_Jquery_Html - Fatal编程技术网

将javascript应用于所有按钮

将javascript应用于所有按钮,javascript,jquery,html,Javascript,Jquery,Html,我有一个动态创建的表,其中有关联的按钮。我想要一个简单的JavaScript方法,将适用于每一个按钮。现在,它只引用创建的第一个按钮 <table> <tbody> <% @task.subtasks.each do |subtask| %> <tr> <td> <button class="btn btn-default" id="collapseBtn"><span class="g

我有一个动态创建的表,其中有关联的按钮。我想要一个简单的JavaScript方法,将适用于每一个按钮。现在,它只引用创建的第一个按钮

<table>
<tbody>
<% @task.subtasks.each do |subtask| %>
   <tr>
     <td>
        <button class="btn btn-default" id="collapseBtn"><span class="glyphicon glyphicon-plus" id="collapseSpan"></button>
  </td>
     <td> <%= subtask.name %></td>
   </tr>
<%end%>
</tbody>
</table>

<script>
   $("#collapseBtn").click(function(){
       $("#collapseSpan).toggleClass("glyphicon-plus glyphicon-minus");
    });
</script>

$(“#collapseBtn”)。单击(函数(){
$(“#collapseSpan).toggleClass(“glyphicon加glyphicon减”);
});

我看到您正在使用jQuery。
您可以使用选择jQuery中的所有按钮

$( ":button" )
而不是使用一个ID
$(“#collapseBtn”)

然后在函数中使用$(this)引用它


来源:

id
属性对于html页面上的任何元素都必须是唯一的,因此您需要添加一些类来检测大量按钮。然后按该类处理按钮

$(".buttonClass").on('click', function(e){
    $(this).find('span').toggleClass("glyphicon-plus glyphicon-minus");
});

如果您添加了一个类,如
collapse btn
,并尝试在类上而不是id上进行选择,该怎么办?这很好。添加了一个if语句,一切都很好。谢谢!