首页 > 解决方案 > 运行 JS 函数的类不适用于 innerHTML

问题描述

我正在尝试使用 innerHTML 插入 html 代码,该代码插入具有类 .flatpickr-date 的输入。

var html = '<input type="text" class="flatpickr-date">'

document.getElementById('id').innerHTML = html;

在 javascript 文件中,我有以下内容,适用于 .flatpickr-date 类并使用“flatpickr”插件方法:

$ (".flatpickr-date").flatpickr(

    {
        dateFormat: "d / m / Y",
        maxDate: new Date (), // 30 days from now
        "locale": "in"
    }

);

前面的代码它的作用是在具有 flatpickr-date 类的输入中生成一个日历。问题是他没有出现,好像他不是在看课

标签: javascriptjqueryhtml

解决方案


如果您将来要动态创建元素,我建议您制作一个可重用的方法。

function initializeFlatPicker (context) {
  $(".flatpickr-date", context || document).flatpickr({
    dateFormat: "d / m / Y",
    maxDate: new Date (), // 30 days from now
    "locale": "in"
  });
}

initializeFlatPicker();

这将与您现在为第一次初始化做的事情相同。然后当你做一个新的...

var html = '<input type="text" class="flatpickr-date">'
var parent = document.getElementById('id');

parent.innerHTML = html;

initializeFlatPicker(parent);

这将再次执行初始化,但针对新元素。


推荐阅读