使用jQuery显示/隐藏在循环中生成的特定类和id的表行

时间:2018-04-28 18:55:38

标签: javascript jquery html

我尝试通过为我的wordpress网站制作自定义页面来学习php和js的基础知识。我有一个从数据库循环生成的数据列表,在表中格式化。我想看看"更多细节"单击特定行后。我能够使用我发现的jQuery .toggle脚本,但它现在仅适用于用户指定的行ID。

我必须将行的类和id传递给jQuery脚本。我已经找到了如何传递id或class,但我无法通过这两者。我确信这真的很无聊,但我的尝试并不成功。

我附加了一些简化代码:



jQuery(function($) { 
    $('#1.row').click(function(){
        $('#1.row_extend').toggle();
    });
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table border="1">
	<tr id="1" class="row"><td>Content</td></tr>
	<tr id="1" class="row_extend"><td>Details</td></tr>
	<tr id="2" class="row"><td>Content</td></tr>
	<tr id="2" class="row_extend"><td>Details</td></tr>
</table>
&#13;
&#13;
&#13;

正如它所写,它只适用于id = 1的行。我想让它适用于所有行。有人使用它会在一瞬间解决这个问题,但我在谷歌上搜索了半天:)谢谢。

1 个答案:

答案 0 :(得分:1)

不要为id添加号码,在这里您不需要添加ID,我们可以使用class

&#13;
&#13;
$(function(){
	$('.row').click(function(){
		$(this).next('.row_extend').toggle();
	});	
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table border="1">
	<tr class="row"><td>Content</td></tr>
	<tr class="row_extend"><td>Details</td></tr>
	<tr class="row"><td>Content</td></tr>
	<tr class="row_extend"><td>Details</td></tr>
</table>
&#13;
&#13;
&#13;