概述
相信用过wangEditor的程序员(媛)都知道,这是一个轻量级富文本编辑器,每每用它的时候总有一种麻雀虽小,五脏俱全的感觉,挺好用的!
但是偶尔也会有些小坑踩踩,接下了我将介绍一个在我的业务里面遇到的坑。。。
业务介绍,该编辑器我是在上传数据时用到的,每一条数据都会绑定至少一个或者是一个以上的编辑器,为提高效率,我让其在首页加载时就创建所需的编辑器,也避免了在重新打开一条记录进行上传或修改时,编辑器的重复创建。
但是,就是因为这个逻辑,编辑器在首页加载时就创建成功了,当我修改或新上传完一条数据的时候,再点开一条新的记录进行修改操作,或者添加新数据的操作时,编辑器中的图片上传功能,可能还有其他功能,就会失效了,需要重新刷新页面,让编辑器重新加载后,方才可以进行下一步的数据上传工作,如此,没上传一条记录,就尽行一次刷新操作,实在是太麻烦了。。
怎么办呢,推到重来吧。。。
既然他在重新刷新后,编辑器重建后才能生效,就不能让它在首页加载时只创建一次编辑器了。所以,只能让它在用户执行修改,和新建操作时的点击按钮上绑定编辑器创建功能,同时还要删除之前已创建好的编辑器,跟了前台页面以后才知道,创建好的编辑器被div包裹,所以在这里用了一些前台动态删除div的办法。
①自己定义一个div,将要动态生成的编辑器包裹起来,在我定义的div里边,还包裹着图片上传的div,代码如下:
......省略代码
<div class="eiderDiv"> //包裹编辑器的div
<div id="abstract" name="abstract" style="height:550px;max-height:600px;">//绑定编辑器上传图片功能的div
</div>
</div>
......省略代码
②编辑器创建在这里不在细说,在这里说一下如何将建好的编辑器删除
由于我的业务需求是多个编辑器,所以我在这里用到了div的循环遍历;
在修改的业务方法里面,代码如下:
。。。。。省略代码
/*清除原编辑器*/
if(editor!=null){
clearEider();
}
/*创建编辑器*/
creatEider();
。。。。。省略代码
/*清除已生成的编辑器*/
function clearEider () {
//获取class名为eiderDiv的所有div元素
var nodes=document.getElementsByClassName("eiderDiv");
/*由于前端页面中的元素是时时刷新变动的,所以务必有这一步将原集合中的长度保留,以免元素新增或删除给循环带来异常*/
var len=nodes.length;
//对集合进行循环遍历
for (var i=len-1;i>=0;i--) {
//将集合中的每个元素中的页面效果清空
document.getElementsByClassName('eiderDiv')[i].innerHTML='';
}
/*由于我绑定了编辑器中内容展示的位置,由于上一步将其完全清空,所以这一步不许有,否则前端页面会报编辑器生成时menus报错,但是我这个方法比较笨,我这里有3个编辑器需要生成,需要一一手动添加,大家如果有更好的解决办法,可以在评论里告知我*/
document.getElementsByClassName('eiderDiv')[2].innerHTML='<div id="abstract2" name="abstract2" style="height:50px;max-height:100px;">n' +
' </div>';
document.getElementsByClassName('eiderDiv')[1].innerHTML='<div id="abstract1" name="abstract1" style="height:50px;max-height:100px;">n' +
' </div>n' +
'ttttttt<div>n' +
' </div>';
document.getElementsByClassName('eiderDiv')[0].innerHTML='<div id="abstract" name="abstract" style="height:550px;max-height:600px;">n' +
' </div>';
//清空表示编辑器的变量中的内容
editor=null;
editor1=null;
editor2=null;
}
也可以在用户点击保存后,关掉修改页面,且重新加载当前页面。
$('#active_win').window('close');//关闭活动窗口
window.location.reload();//重新加载当前窗口
最后
以上就是俊逸百褶裙为你收集整理的关于wangEditor的图片上传失效的解决办法的全部内容,希望文章能够帮你解决关于wangEditor的图片上传失效的解决办法所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复