如何在工具提示ASP.Net中显示富文本?

时间:2011-01-05 10:23:09

标签: asp.net tooltip richtext

我使用以下代码显示工具提示

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" 
    DataKeyNames="ID" DataSourceID="AccessDataSource1">
    <Columns>
        <asp:CommandField ShowEditButton="True" />
        <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" 
            ReadOnly="True" SortExpression="ID" />
        <asp:BoundField DataField="datefu" HeaderText="date" 
            SortExpression="datefu" />
        <asp:TemplateField HeaderText="title" SortExpression="titlefu">
            <EditItemTemplate>
                <asp:TextBox ID="TextBox1" runat="server" Text='<%# Bind("titlefu") %>'></asp:TextBox>
            </EditItemTemplate>
            <ItemTemplate>

        <a href="#" title="<asp:Literal ID="Label1" runat="server" Text='<%# Eval("fu") %>'/>"/>



        <asp:Label ID="NamePatientLabel" runat="server" Text='<%# Eval("titlefu") %>' />

            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

显示以下结果

alt text

然而,当我按如下方式编辑文本时(在另一个包含富文本编辑器的gridview中使其变为粗体和红色)

我得到以下内容(作为第二个网格视图中的格式化结果)

alt text

然而,当我在第一个gridview中查看显示工具提示时,我得到以下结果

alt text

我真的需要你的帮助才能将工具提示显示为富文本

尽管很多人都认为jquery“非常简单”,如果你有一个jquery以外的解决方案,请告诉我。

3 个答案:

答案 0 :(得分:2)

请勿使用浏览器的原生工具提示,而是实施某种气球提示。有很多方法可以做到这一点,这个页面在jquery http://www.dreamcss.com/2009/05/12-jquery-tooltip-for-web-developer.html

中显示了12种方法

使用qTip的一个简单示例是将名为tooltip的属性添加到包含文本的所有a-href并执行此jquery启动脚本

$(document).ready(function() 
{
   $('#content a[tooltip]').each(function()
   {
      $(this).qtip(
      {
         content: $(this).attr('tooltip')
      });
   });
});

答案 1 :(得分:2)

您可能需要查看HoverMenuExtender中的AjaxControlToolkit。尽管名称不仅仅显示菜单 - 你可以用它来做弹出窗口。我只是用它来做你想做的事情。
例如

<%@ Register TagPrefix="ajaxtoolkit" Namespace="AjaxControlToolkit" Assembly="AjaxControlToolkit" %>
<asp:ScriptManager runat="server" ID="scriptmanager" />
<div>
    <asp:GridView ID="Gridview1" runat="server" AutoGenerateColumns="false" CellPadding="2"
        CellSpacing="2">
        <Columns>
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:Label ID="Label1" Text='<%# Container.DataItem %>' runat="server" />
                    <ajaxtoolkit:HoverMenuExtender runat="server" TargetControlID="Label1" PopupControlID="PopupPanel"
                        ID="hme" PopupPosition="Right" />
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>
    <asp:Panel ID="PopupPanel" runat="server" BackColor="White">
        <asp:Label ID="Label2" Text="Some text" runat="server" Font-Bold="true" ForeColor="Red" />
    </asp:Panel>
</div>

答案 2 :(得分:1)