当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/