使用所见即所得的在线编辑器处理事件



我正在尝试在jWYSIWYG文本区域中的文本更改时启用按钮。据我所知,jWYSIWYG 在调用时会删除文本区域并将 iframe 放在其位置,因此$("#my-textarea-id")选择器不会返回任何对象。这些是我所做的尝试,都失败了:

尝试 1:

如此处所示,此代码应该可以工作,但它不会:(

$("#my-textarea-id").wysiwyg({
    event:{
        keyup: function(e){
            $("#my-button").attr("disabled",false);
        }
    }
});

尝试 2:

在下面的尝试中,我从一个不同的脚本中启动了所见即所得的文本区域,该脚本将.wysiwyg(...(函数应用于页面中的所有.RTF元素(我的textArea有这个类(。

jWYSIWYG 放置的新帧[old_textarea_id]-wysiwyg-iframe为 ID,所以我尝试了这个:

$("#my-textarea-id-wysiwyg-iframe").keyup(function(){
    $("#my-button").attr('disabled',false);
});

但又失败了。

尝试 3:

包含文本区域文本的 iframe 部分具有 .wysiwyg 类。我的最后一次尝试是这样的:

$(".wysiwyg").keyup(function(){
    $("#my-button").attr('disabled',false);
});

我不知道如何处理所见即所得元素的事件,所以我寻求您的帮助。谢谢!

这解决了我的问题

使用 JQuery 将事件处理程序添加到 iframe

jWYSIWYG 替换了 iframe 的文本区域。以下问题的答案告诉了将事件绑定到 iframe 的适当方法,这样就可以处理 RTF 在线编辑器的事件。

我认为这个问题对人们很有用,所以我暂时不会删除它。

最新更新