0

我有一个问题。我有这个代码:

    <div id="accordion">
        <h3>Categories</h3>
        <div style="text-align: center; margin: 0 auto;"><p><asp:Button runat="server" ID="btnAddCategory" CssClass="button" Text="Add New Category" OnClientClick="OpenAddNewCategoryDialog(); return false;" /></p>
            <asp:UpdatePanel runat="server" ID="pnlUpdateCategories">
                <ContentTemplate>
                    <asp:Table runat="server" ID="tblCategories"></asp:Table>
                </ContentTemplate>
            </asp:UpdatePanel>
        </div>
        <h3>Access Levels</h3>
        <div>
            <p>This is section 2 content</p>
        </div>
    </div>

我在 ContentTemplate 中的表是动态创建的。除了一个烦人的问题外,一切正常。当我的更新面板更新后有一行添加到表中时,jquery ui 手风琴会获得一个滚动条。如果我按 F5 刷新页面,滚动条不存在并且手风琴随内容增长,正如预期的那样。

似乎每当有 ajax 调用和更新面板更新时,就会出现滚动条而不是扩展手风琴的高度。有谁知道解决这个问题?

4

1 回答 1

1

尝试这个

在异步回发事件之后,它会调用您的 javascript 函数,因此您可以调用手风琴函数并更新 html。试试看

<script type="text/javascript">
    $(document).ready(function(e) {
        $('.test').accordion();
    }); 



var prm = Sys.WebForms.PageRequestManager.getInstance();
    prm.add_endRequest(EndRequest);
    function EndRequest(sender, args) {
        // call your accordion javascript function here for i.e. $('.test').accordion();
    }
</script>
于 2013-06-15T11:17:51.840 回答