Как отобразить форматированный текст во всплывающей подсказке ASP.Net? - PullRequest
2 голосов
/ 05 января 2011

Я использую следующий код для отображения всплывающей подсказки

<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

однако, когда я редактирую текст следующим образом (делаяоно выделено жирным шрифтом и красным цветом в другом виде сетки, содержащем редактор расширенного текстая смотрю в первом окне сетки для отображения всплывающей подсказки, я получаю следующий результат

alt text

Мне очень нужна ваша помощь, чтобы отобразить всплывающую подсказку в виде расширенного текста

, хотя многиелюди говорят, что jquery «очень прост», пожалуйста, дайте мне знать, если у вас есть решение, отличное от jquery.

Ответы [ 3 ]

2 голосов
/ 05 января 2011

Возможно, вы захотите взглянуть на 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 голосов
/ 05 января 2011

Не используйте встроенную всплывающую подсказку браузера, а используйте какой-нибудь всплывающий подсказок.Есть много способов сделать это, на этой странице показано 12 способов в jquery http://www.dreamcss.com/2009/05/12-jquery-tooltip-for-web-developer.html

Простой пример с qTip - добавить атрибут с именем tooltip ко всем вашим a-hrefs, содержащим вашитекст и выполнение этого скрипта запуска jquery

$(document).ready(function() 
{
   $('#content a[tooltip]').each(function()
   {
      $(this).qtip(
      {
         content: $(this).attr('tooltip')
      });
   });
});
1 голос
/ 08 января 2011
...