В HTML идентификаторы документов должны быть уникальными. Вот почему всегда избегайте дублирования идентификаторов. Используйте class
вместо него.
Ваш скрипт может выглядеть следующим образом:
<script id="reqList-template" type="text/x-handlebars-template">
{{#resultList}}
<div class="BarType header tableheader{{@index}}">
<a class="close" href="#" onclick="toggle_pop({{@index}})">
<span>{{name}}</span>
</a>
</div>
{{#each rsToAdd}}
<div class="BarType body tablebody{{@index}}">
<table class="def_inTB fl" >
<tbody>
<tr>
<input class="checkbox" type="checkbox" value="{{id}}">
{{name}}
</tr>
</tbody>
</table>
</div>
{{/each}}
{{/resultList}}
</script>
JS:
function toggle_pop(index){
$(".tablebody" +index).slideToggle();
}
Попробуйте поймать @index
из #resultList
и поместите его в каждый tablebody
из rsToAdd
, я имею в виду, чтобы он выглядел как для каждого BarType body
:
<div class="BarType header tableheader0"> <-- index = 0
...
</div>
<div class="BarType body tablebody0"> <-- here the same 0, etc for 1, 2, others
...
</div>
<div class="BarType body tablebody0"> <-- here the same 0, etc for 1, 2, others
...
</div>
Вот фрагмент кода, показывающий, каким он должен быть:
function toggle_pop(index){
$(".tablebody" +index).slideToggle();
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="BarType header tableheader0">
<a class="close" href="#" onclick="toggle_pop(0)">
<span>qqqqqqq</span>
</a>
</div>
<div class="BarType body tablebody0">
<table class="def_inTB fl" >
<tbody>
<tr>
<input class="checkbox" type="checkbox" value="0">
qqqqqq
</tr>
</tbody>
</table>
</div>
<div class="BarType body tablebody0">
<table class="def_inTB fl" >
<tbody>
<tr>
<input class="checkbox" type="checkbox" value="1">
qqq222
</tr>
</tbody>
</table>
</div>
<div class="BarType header tableheader1">
<a class="close" href="#" onclick="toggle_pop(1)">
<span>qqqqqqq</span>
</a>
</div>
<div class="BarType body tablebody1">
<table class="def_inTB fl" >
<tbody>
<tr>
<input class="checkbox" type="checkbox" value="0">
qqqqqq
</tr>
</tbody>
</table>
</div>
<div class="BarType body tablebody1">
<table class="def_inTB fl" >
<tbody>
<tr>
<input class="checkbox" type="checkbox" value="1">
qqq222
</tr>
</tbody>
</table>
</div>