我正在显示几个复选框,当我们单击一个复选框时,应该会出现一个包含“子”复选框的隐藏 div。例如像这样:http ://screencast.com/t/BJ8BrkeS0i
然而,正如您所看到的,div 显示在第一个项目上,这里是 last_visit,因为它是第一个 id 为“filterInput”的元素。如果我把它变成一个类,所有隐藏的复选框都会出现。
考虑到我正在使用具有未知字段的 foreach,我可以做些什么来仅针对单击的项目定位和显示隐藏的复选框?
foreach ($results as $value) {
$filterOptionsString = <<<TXT
<label class="mainFilterOption">
<input type="checkbox" name="{$value['mongo_db_key']}">
{$value['mongo_db_key']}
</label>
<div id="filterInput">
<input type="checkbox" name="stringIs"> is<br>
<input type="checkbox" name="stringStartsWith"> starts with<br>
<input type="checkbox" name="stringContains"> contains<br>
</div>
TXT;
echo $filterOptionsString ;
}
然后当我们点击一个复选框时,子复选框就会出现:
$('.mainFilterOption input').on('click', function() {
$('#filterInput').toggle();
});