日期:2014-05-16  浏览次数:20706 次

如何使用jquery写的table的行hover事件在UpdatePanel中起作用?
我创建了一个用户控件(.ascx文件) , 如下:
HTML code
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="BASMIG.ascx.cs" Inherits="WebApplication1.UserControl.BAS.BASMIG" %>
<script type="text/javascript" src="../../Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript" src="../../Scripts/JSCommon.js"></script>
<script type="text/javascript">
    $(document).ready(function () {
        formatTable("#tbl");    // 设置table样式及行hover事件
    });
</script>
<br />
<asp:Repeater ID="repBASMIG" runat="server">
    <HeaderTemplate>
        <table id="tbl" class="separate" cellpadding="3">
            <tr>
                <th>
                    MIG001
                </th>
                <th>
                    MIG002
                </th>
                <th>
                    MIG003
                </th>
                <th>
                    MIG004
                </th>
                <th>
                    MIG005
                </th>
                <th>
                    MIG006
                </th>
            </tr>
    </HeaderTemplate>
    <ItemTemplate>
        <tr>
            <td>
                <%# "&nbsp" + DataBinder.Eval(Container.DataItem,"MIG001") %>
            </td>
            <td>
                <%# "&nbsp" + DataBinder.Eval(Container.DataItem, "MIG002")%>
            </td>
            <td>
                <%# "&nbsp" + DataBinder.Eval(Container.DataItem, "MIG003")%>
            </td>
            <td>
                <%# "&nbsp" + DataBinder.Eval(Container.DataItem, "MIG004")%>
            </td>
            <td>
                <%# "&nbsp" + DataBinder.Eval(Container.DataItem, "MIG005")%>
            </td>
            <td>
                <%# "&nbsp" + DataBinder.Eval(Container.DataItem, "MIG006")%>
            </td>
        </tr>
    </ItemTemplate>
    <FooterTemplate>
        </table></FooterTemplate>
</asp:Repeater>



然后在别一个aspx页面中动态将该控件添加到一个UpdatePanel中.
C# code

Control ctl = Page.LoadControl(@"~/ChildPage/BAS/BASMIG.ascx");
            upContent.ContentTemplateContainer.Controls.Clear();
            upContent.ContentTemplateContainer.Controls.Add(ctl);
            upContent.Update();



这样添加是没有问题, 但是ascx文中给table.tr设轩的hover事件没有起作用. 
该如何处理?

------解决方案--------------------
JScript code
$("#tbl").live('mouseenter', function () { .... }).live('mouseleave', function() { ... });