nth ребенок не работает в jquery - PullRequest
0 голосов
/ 26 марта 2012

Я пытаюсь вставить <br clear="all" /> после каждого пятого деления. Ниже описано, как я создаю div в php, а затем пытаюсь использовать 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'/>");

Ответы [ 4 ]

0 голосов
/ 26 марта 2012

Не должно быть пробела после .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 голосов
/ 26 марта 2012

Проблема в том, что он ищет кратное из пяти детей из .productCat из-за дополнительного места. РЕДАКТИРОВАТЬ: На самом деле, он ищет только 5-го ребенка .productCat, потому что вы пропустили n.

Кроме того, что не так с:

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

Это CSS-решение гораздо более эффективно.

0 голосов
/ 26 марта 2012

Почему бы не сделать это в 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;
    }
}
?>
0 голосов
/ 26 марта 2012

поместите пробел между селектором класса и nth-child:

$(".productCat:nth-child(5)").append("");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...