Javascript 将公共代码与CKEditor和jQuery验证一起使用
我正在一个项目中使用CKEditor和jQuery验证插件 在过去的几天里,我在StackOverflow.com上读了一些非常有用的帖子,这些帖子确实帮助我获得了CKEditor的验证,谢谢 现在,我想将我编写的用于处理一个编辑器实例的代码推广到项目的其余部分,理想情况下,不需要重复代码或通过ID指定每个实例。由于客户的规范,在许多页面上都有许多编辑器实例 我在页面页脚中的代码是:Javascript 将公共代码与CKEditor和jQuery验证一起使用,javascript,jquery,jquery-validate,ckeditor,Javascript,Jquery,Jquery Validate,Ckeditor,我正在一个项目中使用CKEditor和jQuery验证插件 在过去的几天里,我在StackOverflow.com上读了一些非常有用的帖子,这些帖子确实帮助我获得了CKEditor的验证,谢谢 现在,我想将我编写的用于处理一个编辑器实例的代码推广到项目的其余部分,理想情况下,不需要重复代码或通过ID指定每个实例。由于客户的规范,在许多页面上都有许多编辑器实例 我在页面页脚中的代码是: $(document).ready(function() { CKEDITOR.instances["itis
$(document).ready(function() {
CKEDITOR.instances["itissue"].on("instanceReady", function() {
// Set keyup event
this.document.on("keyup", updateValue);
// Set paste event
this.document.on("paste", updateValue);
});
function updateValue() {
CKEDITOR.instances.itissue.updateElement();
$("#itissue").trigger('keyup');
}
});
itissue
是我的实例的ID,每个页面上的ID不同。我认为它需要被“所有文本区域”的某种类型的通用标识符所取代,但这正是我编程和谷歌搜索技能失效的地方
如果有人有任何想法,我希望能朝着正确的方向推进。我会在提交处理程序中验证编辑器,而不是观察keyup并调用updateElement onkeyup 要回答您的问题,您需要遍历CKEDITOR.instances对象
// validator submit handler
var submitHandle = function(){
for(var name in CKEDITOR.instances){
CKEDITOR.instances[name].updateElement(); // update all instances of ckEditors
}
// proceed with validation check
};
这样,您就不需要知道编辑器实例的名称。下面是我用来解决此问题的代码,我希望它对将来的用户有用
<script type="text/javascript">
$(document).ready(function() {
for(var name in CKEDITOR.instances) {
CKEDITOR.instances[name].on("instanceReady", function() {
// Set keyup event
this.document.on("keyup", updateValue);
// Set paste event
this.document.on("paste", updateValue);
});
function updateValue() {
CKEDITOR.instances[name].updateElement();
$('textarea').trigger('keyup');
}
}
});
</script>
$(文档).ready(函数(){
for(CKEDITOR.instances中的变量名称){
CKEDITOR.instances[name].on(“InstanceRady”,函数(){
//设置密钥设置事件
本文件在(“keyup”,updateValue)上;
//设置粘贴事件
此.document.on(“粘贴”,updateValue);
});
函数updateValue(){
CKEDITOR.instances[name].updateElement();
$('textarea')。触发器('keyup');
}
}
});
感谢您的帮助Josiah,我最终使用了您建议的for迭代和我自己的代码,因为我需要在更正字段时将错误消息消失。