使用数据库中的图像作为工具提示

时间:2014-01-07 12:21:18

标签: c# asp.net sql-server gridview tooltip

我有一个gridview。在这个gridview中有一个有超链接的列。我想将图像显示为工具提示(在鼠标悬停时显示图像)。图像的路径来自数据库(“IMAGE”列)对于每一行。 我的asp是:

    <asp:GridView ID="GridView1" runat="server"  AutoGenerateColumns="False" DataKeyNames="ID" DataSourceID="SqlDataSource1" >
    <Columns>           
        <asp:TemplateField HeaderText="FULLNAME">
            <ItemTemplate>
                <asp:HyperLink runat="server" Text='<%# Eval("FULLNAME") %>' NavigateUrl='<%# Eval("ID", "Players.aspx?ID={0}") %>' ToolTip='<%# "~/images/players/" + Eval("IMAGE") %>'  ID="HyperLink1"></asp:HyperLink>
            </ItemTemplate>
        </asp:TemplateField>

是否有任何关于制作工具提示图像的建议。 使用此代码,它会显示图像的路径(如下所示)。

enter image description here

我想在mouseover.thanks

上显示图像

2 个答案:

答案 0 :(得分:1)

你可以在jQuery的帮助下完成它,或者写一个等同于以下代码的简单javascript

 <asp:HyperLink runat="server" Text='<%# Eval("FULLNAME") %>' NavigateUrl='<%# Eval("ID", "Players.aspx?ID={0}") %>' data-image-url='<%# "~/images/players/" + Eval("IMAGE") %>'  ID="HyperLink1"></asp:HyperLink>


$(document).ready(function(){

$('#<%= GridView1.ClientID%> a').mouseenter(function(){
   var imageUrl=$(this).data('image-url'); 
   var divContainer= $('<div><img src="+imageUrl+" /></div>');
    $(this).parent().append(divContainer);

});

$('#<%= GridView1.ClientID%> a').mouseleave(function(){

    $(this).next('div').hide()

});

});

答案 1 :(得分:0)

这是正确的代码。动态完美。来自帖子:Show tooltip content when its hovers 还要感谢Murali。

         <asp:HyperLink CssClass="has-tooltip" runat="server" Text='<%# Eval("FULLNAME") %>' NavigateUrl='<%# Eval("ID", "Players.aspx?ID={0}") %>' data-image='<%# "images/players/" + Eval("IMAGE") %>'  ID="HyperLink1"></asp:HyperLink>

  <script type="text/javascript">
    $(document).ready(function () {
        $('.has-tooltip').hover(function () {
            $(this).find('.tooltip').html('<img src="' + $(this).data('image') + '" alt="loading...">').fadeIn();
        }, function () {
            $(this).find('.tooltip').hide();
        }).append('<span class="tooltip"></span>');
    });