将表格单元格中的图像转换为链接

时间:2014-03-31 12:59:38

标签: hyperlink visual-studio-2013 e-commerce

我创建了一个电子商务网站,并使用标签显示我的sql数据库中的产品,它显示的这些产品的图像不是超链接,但这是我需要它们,我想我有写了正确的代码,但我有一个" parentControl"错误,有人可以帮忙吗?

下面还有一个链接,可以直观地向您显示所询问的内容。记住图片只是一张图片,但需要是超链接!

           private void FillPage()
    {
        ArrayList teesList = new ArrayList();

        if (!IsPostBack)
        {
            teesList = ConnectionClass.GetTeesBySize("%");
        }
        else
        {
            teesList = ConnectionClass.GetTeesBySize(DropDownList1.SelectedValue);
        }
        StringBuilder sb = new StringBuilder();

        HyperLink link = new HyperLink();
        link.NavigateUrl = "http://google.com";

        parentControl.Controls.Add(link);

        foreach (Tees tees in teesList)

        {
            sb.Append(string.Format(@"<table class='TeesTable'>
                <tr>
                    <th rowspan='1' width='150px'><img runat='server' src='{6}' /</th>
                    <th width='50px'>Name: </th>
                    <td>{0}</td>
                </tr>

                <tr>
                    <th>Size:</th>
                    <td>{1}</td>
                </tr>

                <tr>
                    <th>Price:</th>
                    <td>{2}</td>
                </tr>



            </table>",
                     tees.name, tees.size, tees.price, tees.id, tees.id, tees.id, tees.image));
            LblOutput.Text = sb.ToString();

https://dl-web.dropbox.com/get/CompetitiveStreakTemplate/Pic.png?_subject_uid=9403629&w=AAD63dzqPQcNMNSU0OwbVBrGjNGFvtt7VWJ6DKwlu4UoPw)。

1 个答案:

答案 0 :(得分:0)

您需要正确关闭<img>标记并将其包装在<a>中,以使其成为超链接。对数据行而不是标题也使用<td>而不是<th>

有点像:

<td rowspan='1' width='150px'> <a href='{0}.aspx'> <img runat='server' src='{6}' /> </a> </td>

您可能还应该整理附加到表格中的其余代码,检查标题或数据是什么,并在<tbody>

中使用<table>标记

编辑:仔细观察,好像你没有在第一时间正确创建表,更改代码块以正确地执行循环:

parentControl.Controls.Add(link);

sb.Append("<table class='TeesTable'><tbody>");

foreach (Tees tees in teesList)
{
    sb.Append(string.Format(@"
            <tr>
                <td rowspan='1' width='150px'>
                    <a href='{0}.aspx'>
                        <img runat='server' src='{6}' />
                    </a>
                </td>
                <td width='50px'>Name: </td>
                <td>{0}</td>
            </tr>

            <tr>
                <td>Size:</td>
                <td colspan='2'>{1}</td>
            </tr>

            <tr>
                <td>Price:</td>
                <td colspan='2'>{2}</td>
            </tr>",

         tees.name, tees.size, tees.price, tees.id, tees.id, tees.id, tees.image));
    }

    sb.Append("</tbody></table>");

    LblOutput.Text = sb.ToString();