javascript - AJAX 加载的 JQuery 日期选择器仅在警报后工作

标签 javascript jquery ajax datepicker

我有一个很奇怪的问题。 我创建了一个分配了日期选择器的字段。

该字段正在通过 AJAX 调用加载到 div 中。

总之,这已经可以工作了..但是有一个问题。 仅当我在启动日期选择器之前设置警报代码时,它才有效。

当我删除警报时。它只是停止工作。

初始化代码在另一个函数中:

alert('kut');
$("#mini_calendar").datepicker({
    defaultDate: "now",
    constrainInput: false,
    changeMonth: true,
    numberOfMonths: 2,
    onClose: function (selectedDate) {
    }
});     

我希望有人知道我做错了什么。

编辑

感谢一百万。

解决办法是:

    interval = setInterval(function(){ 
        if($("#mini_calendar").length > 0) {
            $("#mini_calendar").datepicker({
                defaultDate: "now",
                constrainInput: false,
                changeMonth: true,
                numberOfMonths: 2,
                onClose: function (selectedDate) {
                }
            });
            clearInterval( interval );
        }
    }, 300);

编辑:

我将这些称为 Ajax 的成功:

    ///######## IN CASE OF SUCCESS
    success: function (response) {
        if (response != '') {
            $("[@targetDiv]").html(response);
            DateNav_CalendarInit(DisplayType);
        }
        else {
            alert('error! Something went wrong during the obtaining of data!');
        }
    }

“DateNav_CalendarInit()”调用初始化代码

最佳答案

如果没有警报,您将尝试在 DOM 元素实际存在之前捕获它。

您应该等待文档就绪事件:

示例:

$(function(){
    // .. your code here ..
}

...或者只是将您的 JavaScript 代码放在标记的底部(或至少在 *#mini_calendar"元素之后)。

关于javascript - AJAX 加载的 JQuery 日期选择器仅在警报后工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39017254/

相关文章:

javascript - Closest() 用于从前一个 td 获取 html 值

javascript - 切换 amchart 图形类型,不带调用功能

javascript - 如何使用 CORS 飞行前请求处理自定义 header ? AJAX-代码点火器

ASP.NET - 从表继承的 Ajax 日历扩展器 CSS

javascript - 如何始终保持div相同的高度

javascript - 从深层嵌套组件访问 redux 调度

javascript - 使用 JS 创建一个验证码验证表单(不是服务器端)

javascript - Laravel + jquery 对话框在发布后重定向(+fullcalendar)

ajax - 将 jquery slider 绑定(bind)到 dom

javascript - 如何在jquery中子串