为啥Bootstrap datepicker不能在ajax成功功能中工作[重复]

Posted

技术标签:

【中文标题】为啥Bootstrap datepicker不能在ajax成功功能中工作[重复]【英文标题】:Why Bootstrap datepicker not working in ajax success function [duplicate]为什么Bootstrap datepicker不能在ajax成功功能中工作[重复] 【发布时间】:2018-02-24 12:08:33 【问题描述】:
   $.ajax(
            url: '/Staff/GetStaffFamilyDetails',
            type: 'POST',
            data: 
                StaffID: StaffID
            ,
            success: function (result) 
                var markup = "<input type='text' id='FamEdit'>";
                $('#div').html(markup);
            ,
            complete: function () 
                $('#FamEdit').datepicker(
                    keyboardNavigation: false,
                    autoclose: true,
                    format: "dd M yyyy"
                );
            
        )

朋友们好。我将 datepicker 绑定到动态变量,此时它遇到了一个错误,例如 datepicker 未定义。请帮帮我..如何成功绑定日期选择器

【问题讨论】:

AJAX 请求完成后,是否有多个元素具有相同的 id 为FamEdit?另外,请检查控制台是否有错误。 也添加你的html代码 具体来说,检查接受的答案下方的答案,检查日期选择器的存在以不覆盖它***.com/a/34334388/448144 【参考方案1】:

可能成功和完成同时触发,尝试像这样设置超时:

complete: function () 
    setTimeout(function () 
        $('#FamEdit').datepicker(
            keyboardNavigation: false,
            autoclose: true,
            format: "dd M yyyy"
        );
    , 100);

但最好的解决方案很可能是替换 html 并在一个事件中初始化日期选择器 - 成功。先替换,再初始化。 因为如果没有收到数据(代码中的result),为什么需要重新初始化日期选择器?

【讨论】:

【参考方案2】:

在我的本地页面上测试了您的代码,它可以正常工作。 “日期选择器未定义。”:似乎 datepicker.js 未正确包含在您的页面中

【讨论】:

以上是关于为啥Bootstrap datepicker不能在ajax成功功能中工作[重复]的主要内容,如果未能解决你的问题,请参考以下文章

bootstrap datepicker插件用不了

为啥我不能在同一张表中使用 datepicker 两次?

Bootstrap 4 Datepicker块日期范围

React DatePicker Bootstrap 是最新的

如何在 JS 函数 onchange 事件中获取 Bootstrap Datepicker 的值?

bootstrap-datepicker 手动输入日期问题