Javascript计时器不与mysql_fetch_array结果一起循环

Javascript timer not looping along with mysql_fetch_array results

本文关键字:array 结果 一起 循环 fetch Javascript mysql 计时器      更新时间:2023-09-26
<? while($row = mysql_fetch_array($result))
{
$result2 = $row['end_time'];    
echo"<td><div id=defaultCountdown></div></td>"; 
?>
<script type=text/javascript>
$(function () 
{
var t = ('<? echo $result2; ?>').split(/[- :]/);
   // Apply each element to the Date function
var d = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]); 
$('#defaultCountdown').countdown({until: d});
$('#year').text(austDay.getFullYear());
});
</script>
    <? }
?>
所以基本上我想为mysql_fetch_array生成的每一行结果启动Javascript倒计时计时器。然而,在上面的代码中,计时器只对结果的第一行起作用。我如何使计时器工作的每一行的结果?

编辑
   <td> 2012-12-17 13:12:22</td><td> <img src = Images/1324133424.jpg height=200 width=300 />     </td><td> active</td><td><div id=defaultCountdown0></div></td>    
<script type=text/javascript>
$(function () 
{

var t = ('2012-12-17 13:12:22').split(/[- :]/);

// Apply each element to the Date function
var d = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]); 
$('#defaultCountdown0').countdown({until: d});
$('#year').text(austDay.getFullYear());
 });

</script>
<td> 2012-12-01 13:12:22</td><td>     <img src = Images/1322754818.jpg height=200 width=300 /> </td><td> active</td>    <td><div id=defaultCountdown1></div></td>    
<script type=text/javascript>
$(function () 
{

var t = ('2012-12-01 13:12:22').split(/[- :]/);

// Apply each element to the Date function
var d = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]); 
$('#defaultCountdown1').countdown({until: d});
$('#year').text(austDay.getFullYear());
});

</script>

在PHP while循环中,您为所有divs设置了相同的ID,这可能就是为什么只有第一行有效的原因。但是,正如我在评论中所说,您需要添加由PHP代码生成的实际JavaScript。

echo"<td><div id=defaultCountdown></div></td>";
编辑:

代码应该是这样的。按原样运行它,然后尝试做一些小的修改,让它做你想做的事情:

<?
    while($row = mysql_fetch_array($result))
    {
        $i = 0;
        $result2 = $row['end_time'];    
        echo "<td><div id=defaultCountdown$i></div></td>"; 
?>
<script type=text/javascript>
    $(function ()
    {
        var t = ('<? echo $result2; ?>').split(/[- :]/);
        // Apply each element to the Date function
        var d = new Date(t[0], t[1]-1, t[2], t[3], t[4], t[5]); 
        $('#defaultCountdown<?php echo $i; ?>').countdown({until: d});
        $('#year').text(austDay.getFullYear());
    });
</script>
<?
        $i++;
    }
?>