2012-03-26 54 views
0

我想在每个五分之一后插入<br clear="all" />。下面是我如何在PHP中创建div,然后尝试使用jquery来分离它们。但它不工作!任何帮助将不胜感激!提前致谢!:第n个孩子不在jquery中工作

PHP:

$get = mysql_query("SELECT * FROM Products $cate ") or die(mysql_error()); 
    while($row= mysql_fetch_array($get)){ 
     $pname = $row['Pname']; 
     $image = $row['Pimage']; 
     $id = $row['ID']; 
     ?> 
    <div class="productCat"><a href="product.php?id=<?php echo $id ?>"><img src="../products/<?php echo $image ?>" width="100" height="100" /><br /><?php echo $pname ?></a></div> 

     <?php 
     } 
    ?> 

JQUERY:

$(".productCat :nth-child(5)").append("<br clear='all'/>"); 
+0

是不是明确的属性弃用? – j08691 2012-03-26 19:58:12

回答

0

还有就是不应该是一个空间.productCat之后。

另外,为什么不只是在PHP呢?只需添加一个计数器:

$count=0; 
while($row= mysql_fetch_array($get)){ 
    $count++; 
    $pname = $row['Pname']; 
    $image = $row['Pimage']; 
    $id = $row['ID']; 
    ?> 
<div class="productCat"><a href="product.php?id=<?php echo $id ?>"><img src="../products/<?php echo $image ?>" width="100" height="100" /><br /><?php echo $pname ?></a></div> 

    <?php 
    if($count%5==0) 
     echo "<br clear='all'/>"; 
    } 
?> 
+0

非常感谢你!像魅力一样工作! – liveandream 2012-03-26 21:08:41

0

把空间淘汰类选择和第n个孩子之间:

$(".productCat:nth-child(5)").append(""); 
0

的问题是,它是寻找多的第五个儿童.productCat,因为th额外的空间。编辑:其实,它只是寻找.productCat的第五个孩子,因为你离开了n

此外,有什么错:

/* CSS: */ 
.productCat:nth-child(5n+1) {clear: left;} 

这只CSS的解决方案是更为有效。

0

为什么不用PHP来做呢?如果你使用jQuery,人无javascript不会有你的“BR” ......

<?php 
$get = mysql_query('SELECT * FROM Products '.$cate) or die(mysql_error()); 
$i=0; 
while($row = mysql_fetch_array($get)){ 
    $i++: 
    ?> 
    <div class="productCat"><a href="product.php?id=<?php echo $row['ID']; ?>"><img src="../products/<?php echo $row['Pimage']; ?>" width="100" height="100" /><br /><?php echo $row['Pname']; ?></a></div> 
    <?php 
    if($i == 5){ 
     echo '<br clear="all" />'; 
     $i=0; 
    } 
} 
?>