表格单元格之间的超链接?

时间:2012-02-09 09:53:46

标签: php html hyperlink html-table

我正在尝试从分割在表格行中的两个单元格的两段文本中创建超链接。

我使用PHP生成我的表,以将我的数据库中的结果回显到表中。 当它回显时,它会在末尾生成一个带有GET变量的超链接,允许用户访问与该信息相关的页面。

问题在于,我似乎无法生成一个跨越这些表格单元格的超链接,我已经环顾网络,没有任何内容表明我无法做到这一点。

从下面的屏幕截图中我可以看到,我在一个表格单元格中生成一个超链接,但我希望其他表格单元格具有相同的超链接。

enter image description here

代码

while ($row = $db->fetch_assoc($newest))
                        {
                            echo "<tr>";
                                echo "<td>";
                                    echo  "<a href='manager.php?method=view&id=".$row['id']."'>".$row['first_name']." ". $row['second_name']. "</td><td>".$row['company_name']."</a>";
                                echo "</td>";
                            echo "</tr>";
                        }

我有一种感觉,我只需要为表格单元生成两个单独的超链接。

但是我希望这里有人可以证明我错了,并保存了几行代码。

谢谢:)

5 个答案:

答案 0 :(得分:5)

使用本机超链接,您必须为每个单元格创建单独的包装器。

但是,如果您想使用JS进行链接和重定向,您可以执行以下操作:

.....
<tr class="clickable" data-href="http://google.com">
<td>cell-1</td>
<td>cell-2</td>
<td>cell-3</td>
</tr>
....

然后:

$(function(){
    $('tr.clickable').click(function(){
        window.location.href = $(this).attr('data-href');
    });
});

答案 1 :(得分:2)

只需使用JS解决它:

echo "<tr onclick=\"location.href='manager.php?method=view&id=".$info.";'\">";

答案 2 :(得分:1)

如果您不想破坏表结构(即将名称和公司放入一个(多列)单元格),除了生成两个超链接之外,恕我直言。

您可能想要做的是使用一些CSS来悬停效果,并使用一些JavaScript来注册单击一个单元格的用户(根据上面的结构,您可以将其与tr元素相关联)。

答案 3 :(得分:1)

你不能这样做。请尝试改为:

 while ($row = $db->fetch_assoc($newest))
    {
        $url = "manager.php?method=view&id=".$row['id'];
        echo "<tr>";
            echo "<td><a href=\"" . $url.  "\">" . $row['first_name']." ". $row['second_name']. "</a></td>";
            echo "<td><a href=\"" . $url.  "\">" . $row['company_name'] . "</a></td>";
        echo "</tr>";
    }

答案 4 :(得分:1)

while ($row = $db->fetch_assoc($newest))
{
    echo "<tr>";
    echo "<td>";
    echo "<a href='manager.php?method=view&id=".$row['id']."'>".$row['first_name']." ". $row['second_name']."</a></td><a href='manager.php?method=view&id=".$row['id']."'>".$row['company_name']."</a><td></td>";
    echo "</td>";
    echo "</tr>";
}