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

尝试1:

here所示,此代码应该可以工作,但是:(

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

尝试2:

在以下尝试中,我从不同的脚本中初始化jWYSIWYG文本区域,该脚本将.wysiwyg(...)函数应用于页面中的所有.RTF元素(我的textarea具有此类)。

jWYSIWYG放置的新框架将[old_textarea_id]-wysiwyg-iframe作为ID,因此我尝试了以下操作:
$("#my-textarea-id-wysiwyg-iframe").keyup(function(){
    $("#my-button").attr('disabled',false);
});

但又失败了。

尝试3:

包含textarea文本的iframe部分具有.wysiwyg类。我最后的尝试是这样的:
$(".wysiwyg").keyup(function(){
    $("#my-button").attr('disabled',false);
});

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

最佳答案

这解决了我的问题

Adding event handler to an iframe using JQuery

jWYSIWYG替换了iframe的文本区域。以下问题的答案说明了将事件绑定(bind)到iframe的适当方法,并且这种方法可以处理RTF在线编辑器的事件。

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

关于javascript - 使用jWYSIWYG在线编辑器处理事件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9467215/

10-11 03:52