2

ツールチップを表示するためのスクリプトがあります

 function BindToolTip(){
        $('.toolTip').hover(
    function () {
        this.tip = this.title;
        $(this).append(
        '<div class="toolTipWrapper">'
            + '<div class="toolTipTop"></div>'
            + '<div class="toolTipMid">'
                + this.tip
            + '</div>'
            + '<div class="toolTipBtm"></div>'
        + '</div>'
    );
        this.title = '';
        this.width = $(this).width();
        $(this).find('.toolTipWrapper').css({ left: this.width - 22 })
        $('.toolTipWrapper').fadeIn(300);

    },
function () {
    $('.toolTipWrapper').fadeOut(100);
    $(this).children().remove();
    this.title = this.tip;
}
);
    }

aspx ファイルは次のようになります。

<asp:UpdatePanel ID="UpdatePanelAddNews" UpdateMode="Conditional" runat="server">  
<ContentTemplate>
 <script type="text/javascript">
             Sys.Application.add_load(BindToolTip);
  </script>    
   <div class="toolTip" title="This is a simple tooltip made with jQuery"></div> 
  <asp:UpdatePanel ID="UpdatePanelDate" runat="server">
      <ContentTemplate>                          
 <asp:DropDownList ID="DropDownListYearStart" runat="server" AutoPostBack="true"
  OnSelectedIndexChanged="OnSelectedStartDateChanged" CssClass="dropdown"> </asp:DropDownList>
     </ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</asp:UpdatePanel>

div をホバーするとツールチップが正しく表示されますが、ドロップダウン リストでポストバックを行った後、最初に div をホバーすると 2 つのツールチップが表示されます。2 回目にホバーすると、空のツールチップのみが表示されます。行を削除すると、次のことがわかります: this.title = ''; スクリプトからは正常に動作しますが、2 つのツールチップ (私のカスタム ツールチップとデフォルトの Windows ツールチップ) を表示する必要があります。それを解決する方法は?

4

1 に答える 1

1

ContentTemplate の最後にスクリプトを記述します。お気に入り、

<asp:UpdatePanel ID="UpdatePanelAddNews" UpdateMode="Conditional" runat="server">  
<ContentTemplate>    
<div class="toolTip" title="This is a simple tooltip made with jQuery"></div> 
<asp:UpdatePanel ID="UpdatePanelDate" runat="server">
  <ContentTemplate>                          
<asp:DropDownList ID="DropDownListYearStart" runat="server" AutoPostBack="true"
OnSelectedIndexChanged="OnSelectedStartDateChanged" CssClass="dropdown"> </asp:DropDownList>
<script type="text/javascript">
         Sys.Application.add_load(BindToolTip);
</script>    
 </ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</asp:UpdatePanel>

それが役に立てば幸い。問題が解決した場合は、賛成票を投じることを忘れないでください。ありがとう.. :)

于 2012-10-09T15:37:39.177 に答える