如果输入不存在,请插入输入

Insert input if it does not exist

本文关键字:输入 插入 不存在 如果      更新时间:2023-09-26

我正在开发一个电子邮件模板编辑器,用户将从预先存在的模板列表中进行选择,并能够根据需要更新模板。我在跨浏览器使用 CKEditor 插件时遇到问题,因此我尝试创建自己的插件。当用户选择模板时,它将在模式窗口中打开。为了更改图像,我包含了输入标签,这些标签在模态关闭时被删除。这工作得很好,非常好,但是如果用户想要返回编辑器,则输入按钮不再存在。

如果输入按钮不存在,我想在模态窗口中添加输入按钮。我尝试检查属性的长度,但无论它是否存在,我都无法返回 null 以外的值。我的代码如下:

function template1InputButtons() {
    if ($("#imageInput1T1").length == 0) {
        $('<input id="imageInput1T1" type="file" name="newImage1T1" onchange="previewImage1T1(this)" />').insertBefore('.article_media');
    }
}

如果我第一次打开它,长度就会变成一个,所以没有按预期添加任何东西。如果我删除然后再次单击按钮,长度显示为 0,并且输入按预期正确添加。如果我随后删除输入并再次单击按钮,尽管控件不存在,长度仍为 1。

有什么想法吗?

试试这个:

function template1InputButtons() {
    if (!$("#imageInput1T1")) {
        $('<input id="imageInput1T1" type="file" name="newImage1T1" onchange="previewImage1T1(this)" />').insertBefore('.article_media');
    }
}

并确保您已将其放置在就绪功能中。

试试这个:

if ($("body").find("#imageInput1T1").length == 0) {
        $('<input id="imageInput1T1" type="file" name="newImage1T1" onchange="previewImage1T1(this)" />').insertBefore('.article_media');
    }
问题是类

属性的类似发现 article_media 在另一个模态上我的错误无论如何感谢您的帮助