2012-12-11 32 views
0

我有一个问题,选择特定的复选框,并把higlight CSS其格的mysql_fetch_arrayPHP jQuery的选择,而里面的具体复选框fetch_array

这里里面是我的代码

$count=1; 
$query = mysql_query('SELECT * FROM thread'); 
while($row = mysql_fetch_array($query)) 
{ 
    echo "<div class='row".$count."'><input type='checkebox' class='chk_box".$count."'> ".$row['title']."</div>"; 
    $count++; 
} 

<script> 
var count= "<?php echo $count?>"; 
for(var y=1;y<=count;y++){ 
$('.chk_box'+y).click(function() { 
    if(this.checked) { 
    $('.row'+y).addClass('backcolor'); 
    } 
    else{ 
    $('.row'+y).removeClass('backcolor'); 
    } 
}); 
     } 
</script> 

回答

1

固定索姆错别字,添加了DOM就绪函数,并改变了一下jQuery,试试?

$count=1; 
$query = mysql_query('SELECT * FROM thread'); 
while($row = mysql_fetch_array($query)) { 
    echo "<div class='row".$count."'><input type='checkbox' class='chk_box".$count."'> ".$row['title']."</div>"; 
    $count++; 
} 

<script type="text/javascript"> 
$(function() { 
    $('[class^="chk_box"]').on('click', function() { 
     $(this).closest('div').toggleClass('backcolor', this.checked); 
    }); 
}); 
</script>​​​​​​​​​​ 

作为旁注,在for循环中附加事件处理程序通常不是一个好主意。