动态表的唯一id

unique id for dynamic table

本文关键字:id 唯一 动态      更新时间:2023-09-26

我将用从MySQL中提取的数据生成一个HTML表。MySQL表中的行数不是固定的。

<?php
  while($row=mysql_fetch_assoc($result))
  { ?>
    <tr>
      <td><?php echo $row['col1'];?></td>
      <td><?php echo $row['col2'];?></td>
    </tr>
  <?php } ?>

现在,如何为table rowstable data元素分配唯一的id??

生成它们的另一个循环不起作用,因为我不能为新循环设置退出条件,因为行数不是固定的。

请指导我如何进行。我只能使用Javascript,不能使用JQUERY

为什么不能这样做?

<?php
  $i = 1;
  while($row=mysql_fetch_assoc($result))
  { ?>
    <tr id="row<?php echo $i;?>">
      <td id="cell-left-<?php echo $i;?>"><?php echo $row['col1'];?></td>
      <td id="cell-right-<?php echo $i;?>"><?php echo $row['col2'];?></td>
    </tr>
  <?php
     $i++;
   } ?>

请注意,我自己添加了ID rowcell-left-cell-right-。您可以根据自己的要求进行更改。

在遍历行时可以使用计数器,可能是这样的:

<?php
    $rowCount = 0;
    while($row=mysql_fetch_assoc($result))
    {
        $rowCount++;
        ?>
        <tr id="<?php echo 'row' . $rowCount;?>">
            <td><?php echo $row['col1'];?></td>
            <td><?php echo $row['col2'];?></td>
        </tr>
        <?php
    }

?>

您现在可以使用选择元素

var rowID = 1;
document.getElementById("row" + rowID);

希望这能有所帮助。