UpdatePanel对象不支持属性或方法“ datetimepicker”

时间:2018-06-20 00:15:15

标签: jquery asp.net ajaxcontroltoolkit

如果我在aspx页面中不使用更新面板,则以下代码可以很好地工作:

<script src="../Scripts/jquery-1.10.2.min.js"></script>
<link href="../Css/bootstrap-datetimepicker.min.css" rel="stylesheet" />
<script src="../Scripts/bootstrap-datetimepicker.js"></script>
<script type="text/javascript">

    $("#<%=txtFromDate.ClientID%>").datetimepicker({
        format: 'yyyy-mm-dd',
        language: 'us',
        weekStart: 1,
        todayBtn: 1,
        autoclose: 1,
        todayHighlight: 1,
        startView: 2,
        minView: 2,
        forceParse: 0
    });
</script>

所以我想使用更新面板,因为我想通过UpdateProgress标签显示加载图标。所以有人建议我应该使用以下代码:

<script src="../Scripts/jquery-1.10.2.min.js"></script>
<link href="../Css/bootstrap-datetimepicker.min.css" rel="stylesheet" />
<script src="../Scripts/bootstrap-datetimepicker.js"></script>
<script type="text/javascript">

    var prm = Sys.WebForms.PageRequestManager.getInstance();

    if (prm != null) {
        prm.add_endRequest(function (sender, e) {
            if (sender._postBackSettings.panelsToUpdate != null) {
                $("#<%=txtFromDate.ClientID%>").datetimepicker({
                    format: 'yyyy-mm-dd',
                    language: 'us',
                    weekStart: 1,
                    todayBtn: 1,
                    autoclose: 1,
                    todayHighlight: 1,
                    startView: 2,
                    minView: 2,
                    forceParse: 0
                });    
            }
        }
    );

</script>

如果我使用此代码,则会收到一条错误消息,指出对象不支持此行上的属性或方法“ datetimepicker” :$(“#<%= txtFromDate.ClientID%>”) .datetimepicker({

可能是什么原因?

enter image description here

1 个答案:

答案 0 :(得分:2)

如果您的目标是显示UpdateProgress控件,则可以取消所有这些操作并返回到原始代码。如果触发异步回发(在更新面板内部或外部),UpdateProgress控件将自动触发,并且它(UpdateProgress控件)可以在页面上的任何位置,甚至在更新面板之外!

如果UpdateProgress控件未与特定的更新面板相关联,它将为所有异步回发触发。

请注意,如果异步回发确实非常快,则可能看不到UpdateProgress控件。如果需要一两秒钟,它应该会出现。

高度。