我的页面顶部有几个按钮。按钮下方是一些内容。

每当按下按钮时,将使用UpdatePanels刷新内容。

在此内容中,我尝试使用royal slider plugin,每次按下按钮时都需要对其进行初始化。我遇到了一个问题,即每次单击按钮时都无法使Royal滑块初始化。

我试过的是在正在刷新的div中调用一个函数,但这也无法正常工作。回调后没有调用该函数。

HTML(内容):

<asp:UpdatePanel ID="ID" ChildrenAsTriggers="true" runat="server">
<div class="wrapper">


<!-- main navigation -->
    <asp:Panel ID="someID" runat="server"></asp:Panel>
                    <script type="text/javascript">
                            createSlider();
                    </script>
</div>
</asp:UpdatePanel>


JS:

function createSlider() {
        $('.royalSlider').royalSlider({
            arrowsNav: true,
            loop: false,
            keyboardNavEnabled: false,
            controlsInside: false,
            imageScaleMode: 'fill',
            arrowsNavAutoHide: true,
            autoScaleSlider: true,
            autoScaleSliderWidth: 680,
            autoScaleSliderHeight: 140,
            controlNavigation: 'none',
            thumbsFitInViewport: false,
            navigateByClick: true,
            sliderDrag: true,
            sliderTouch: true,
            startSlideId: 0,
            autoPlay: false,
            transitionType: 'move',
            globalCaption: true,
            deeplinking: {
                enabled: true,
                change: false
            },
            /* size of all images */
            imgWidth: 680,
            imgHeight: 140
        });
    }


我将如何去做呢?

最佳答案

您是否尝试过以下方法:

<script type="text/javascript">
    var prm = Sys.WebForms.PageRequestManager.getInstance();

    prm.add_endRequest(function() {
        createSlider();
    });
</script>


并将此脚本放在UpdatePanel之外

10-07 23:13