2015-10-19 135 views
2

在下面的代码中,我不知道这里有多少行是动态的。首先我们必须隐藏所有div。当我检查(/ /第一次输入)后复选框只有它的div应该是可见的。如何通过复选框隐藏并显示我的div

<?php 
    $checkboxid=0; 
    foreach($products as $product){ 
     $checkboxid = $checkboxid+1; 
?> 
    <tr> 
     <td class="text-center"> 
      //first input<input name="checkbox[]" type="checkbox" value="<?php echo $product['id'];?>" id="<?php echo $checkboxid; ?>"><br/>    
      <div class="<?php echo $checkboxid; ?>"> 
       <input name="chile" type="checkbox" value="" ><br/> 
       <input name="miami" type="checkbox" value="" > 
      </div> 
     </td> 
    </tr> 
<?php } ?> 
+0

使用jQuery秀( )并隐藏() –

+0

检查复选框的ID如果选中,然后显示其他隐藏或反之亦然按您的要求 –

+0

请仔细阅读问题,我不知道有多少行,所以我们不能使用任何静态ID或类。 –

回答

2

使用类易于实现,像这样:

<input name="checkbox[]" type="checkbox" value="<?php echo $product['id'];?>" id="<?php echo $checkboxid; ?>" class="myCheckBox"> 

然后附着变更处理到myCheckBox类象下面这样:

$(document).on('change', '.myCheckBox', function() { 
    // or .next().next() change to .nextAll('div') 
    // in case only one of div element are existed 
    if (this.checked) $(this).next().next().show(); 
    else $(this).next().next().hide(); 
}); 

为了更好的办法认沽类各自的DIV中,像这样:

<div class="<?php echo $checkboxid; ?> myDiv"> 
    <input name="chile" type="checkbox" value="" ><br/> 
    <input name="miami" type="checkbox" value="" > 
</div> 

只匹配选择,然后在js代码只是过滤下一个输入:

$(document).on('change', '.myCheckBox', function() {  
    if (this.checked) $(this).nextAll('.myDiv').show(); 
    else $(this).nextAll('.myDiv').hide(); 
}); 

更新

我不知道有多少行,所以我们不能使用任何静态ID或类

在这种情况下,class是适合你

DEMO

+0

HI Ghazali,请仔细阅读问题,我不知道有多少行,所以我们不能使用任何静态ID或上课。 –

+1

为什么配对,类是多个元素,甚至共享同一个名称,但我们用$(this)来区分它,它代表当前点击复选框。查看附带的演示,所有表格行具有相同的结构。我没有给出使用静态ID的例子,但是在使用动态内容时使用类的原因,类更多的套件。 –

+0

如果您不太确定,请再次查看更新后的演示。我动态地创建表行(如我们不知道它们中有多少行) –

0
$(document).ready(function() { 
$('#checkbox1').change(function() { 
    if (!this.checked) 
     $('#autoUpdate').fadeIn('slow'); 
    else 
     $('#autoUpdate').fadeOut('slow'); 
}); 
}); 

你可以像这样

DEMO

+0

HI Arijit,请仔细阅读问题,我不知道有多少行,所以我们不能使用任何静态ID或类。 –

+0

我不这么认为,当你使用foreach循环确保,你为它们分配id或至少一个类 –

相关问题