如果我在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({
可能是什么原因?
答案 0 :(得分:2)
如果您的目标是显示UpdateProgress控件,则可以取消所有这些操作并返回到原始代码。如果触发异步回发(在更新面板内部或外部),UpdateProgress控件将自动触发,并且它(UpdateProgress控件)可以在页面上的任何位置,甚至在更新面板之外!
如果UpdateProgress控件未与特定的更新面板相关联,它将为所有异步回发触发。
请注意,如果异步回发确实非常快,则可能看不到UpdateProgress控件。如果需要一两秒钟,它应该会出现。
高度。