首页 > 解决方案 > 如何在表格每一行的开头设置一个按钮?

问题描述

我尝试在每行的开头有一个按钮。我将使用此按钮在弹出窗口上打开一行。

我知道这并不难,但不知何故,我很难将按钮放在一行的开头。

为您提供我的代码的上下文。我在SQL查询后生成表,所以我不知道我会有多少行。这是代码:

$result = Db::query($requete);

$texte = "<table class='table table-bordered table-sm'><thead>$table_header</thead>";
$texte .= "<tbody>";

if (!pg_num_rows($result)){
    $nb_ligne = "Aucune ligne trouvée !";
}else{
    $nb_ligne ="Nombre de lignes : ".pg_num_rows($result);
}
while($row = pg_fetch_row($result)){
    $texte .= "<tr>";
    foreach ($row as $value){
        $texte .= "<td><button type='button' class='btn btn-primary' onclick=''></button></td><td style='word-break: keep-all'>$value</td>";
    }
    $texte .= "</tr>";
}
$texte .= "</tbody></table>";

$response = new Response();
$response->assign('nb_ligne', 'innerHTML', $nb_ligne);
$response->assign('tableau_resultat', 'innerHTML', $texte);

return $response;

我首先创建表的标题。$table_header包含<th>标签和标题值。然后我在查询返回的数据集的每一行上循环。对于每一行,我创建<tr>标签并为每个值创建<td>标签。我使用Jaxon(PHP lib 做 AJAX)来显示我的表格。

我试图在开头放置一个按钮,但它们显示在我的桌子之前。

我得到这个输出: 图像

按钮是标题上方左侧的蓝色框。我希望它们位于除标题行之外的每一行的左侧。

我想从中吸取教训,所以,如果可能的话,向我解释我在这里做错了什么,或者我的方法是否缺乏洞察力。

标签: htmlpostgresqlphp-pgsql

解决方案


您只需要每行一次的按钮 - 为什么要为每列创建一个按钮?!

while($row = pg_fetch_row($result)){
    $texte .= "<tr><td><button type='button' class='btn btn-primary' onclick=''></button></td>";
    foreach ($row as $value){
        $texte .= "<td style='word-break: keep-all'>$value</td>";
    }
    $texte .= "</tr>";
}

您还应该在标题左侧放置一个空单元格。


推荐阅读