2013-09-20 9 views
0

Я пытаюсь использовать элемент popover из фреймворка начальной загрузки для Javascript/jQuery, и он работает только с первым в цикле while. Как я могу заставить его работать для всех?Bootstrap popover не работает во время цикла

Почему это? Пытался выяснить это для немного ...

<?php 
require 'include.php'; 
session_start(); 

    $selectBets = $dbc->query("SELECT * FROM `bets` ORDER BY `bid` DESC LIMIT 10"); 
?> 
<style type="text/css"> 
#hash_text { 
    font-size: 3.8px; 
} 
</style> 
<table class="table table-striped table-bordered table-hover"> 
       <thead> 
        <tr> 
        <th>Bet Number</th> 
        <th>Amount</th> 
        <th>Send Address</th> 
        <th>Time Created</th> 
        <th>Time Expires</th> 
        <th>Chance to Win</th> 
        <th>Payout Multiplier</th> 
        <th>Final Profit</th> 
        <th>Server Hash</th> 
        </tr> 
       </thead> 
       <tbody> 
       <?php while($BetsArray = $selectBets->fetch()) { ?> 
        <tr> 
        <td><?php echo $BetsArray['bid']; ?></td> 
        <td><?php echo $BetsArray['amount']; ?></td> 
        <td><?php echo $BetsArray['deposit_address']; ?></td> 
        <td><?php echo date('m/d/Y - H:i:s', $BetsArray['time_created']); ?></td> 
        <td><?php echo date('m/d/Y - H:i:s', $BetsArray['time_expires']); ?></td> 
        <td><?php echo $BetsArray['win_chance']; ?></td> 
        <td><?php echo $BetsArray['multiplier']; ?></td> 
        <td><?php echo $BetsArray['profit']; ?></td> 
        <td><a id="hash" data-container="body" data-toggle="popover" data-placement="right">Click here for Server Hash</a></td> 
        </tr> 
       <?php } ?> 
       </tbody> 
       </table> 
       <script type="text/javascript"> 
       $(function() { 
       $('#hash').popover({ 
        html: true, 
        placement: 'right', 
        content: '<?php echo '<span id="hash_text">' . hash('sha512', $BetsArray['number'] . '-' . $_SESSION['client_seed']) . '</span>'; ?>' 
       }); 
       }); 
       </script> 
+1

Google разница между '' id' и class' для элемента HTML, и вы сделали :) – coolguy

ответ

1

Вы создаете элемент поповер путем дублирования идентификаторов. Измените его на класс и посмотрите, как он работает.

<a id="hash" data-container="body" data-toggle="popover" data-placement="right">Click here for Server Hash</a> 

Когда вы связываете с помощью пирог селектора $('#hash') будет выбрать только первый элемент с идентификатором, который появляется в DOM и, следовательно, поведение, которое вы видите.

Если вы хотите поместить быстрое исправление, вы можете использовать селектор атрибутов, чтобы выбрать идентификатор, подобный этому.

$('[id=hash]').popover({ 
        html: true, 
        placement: 'right', 
        content: '<?php echo '<span id="hash_text">' . hash('sha512', $BetsArray['number'] . '-' . $_SESSION['client_seed']) . '</span>'; ?>' 
}); 

Но никогда когда-либо делать что

+0

@JohnSmith, если он работал, пожалуйста, не забудьте пометить как ответ. :) – PSL

+0

и вот образец скрипки http://jsfiddle.net/FkFBs/ – PSL

Смежные вопросы