在gridview onclick中动态加载图像

时间:2014-07-08 16:48:26

标签: javascript jquery asp.net gridview

我有一个带有图像列的gridview:动态地我正在加载id

 <asp:TemplateField HeaderText="Image">
        <ItemTemplate>
            <a href="#" onclick="showImages('<%# Eval("id")%>');">Show Image</a>
            <img id="img1" />
         </ItemTemplate>
 </asp:TemplateField>

点击即可加载图片

    function showImages(id) {                      
        document.getElementById('img1').src = 'Images/' + id + '.jpg';
    }

当我点击&#34;显示图像&#34时,第一行加载链接,但当我点击第二行时,图像不会加载。我检查了viewsource,我认为它不起作用的原因是因为img id对于所有行都是相同的。如何动态制作img id。

谢谢,

1 个答案:

答案 0 :(得分:0)

你是对的。它不工作的原因是因为你所有的img都有相同的“id”。简单的解决方法是生成动态ID。您可以将其附加到您的图片ID。

<asp:TemplateField HeaderText="Image">
        <ItemTemplate>
            <a href="#" onclick="showImages('img<%# Eval("id")%>');">Show Image</a>
            <img id='img<%# Eval("id")%>' />
         </ItemTemplate>
 </asp:TemplateField>