当前位置:   article > 正文

layer+UEditor 问题总结 (UEditor 字体颜色下拉框不显示,获取UEditor 的值进行提交, ajax回调进行html赋值以及重新赋值)

layer+UEditor 问题总结 (UEditor 字体颜色下拉框不显示,获取UEditor 的值进行提交, ajax回调进行html赋值以及重新赋值)

相信很多小伙伴在初次使用layer+UEditor 会出现一些问题,

比如

1·在弹框中UEditor 的字体大小和颜色等等没办法修改,

2·因为没有name属性而需要使用别的方法进行获取值,进行提交

3·使用ajax从数据库中读取数据对UEditor 赋值以及重新赋值

下面一一把我的方法写出来

1.在弹框中UEditor 的字体大小和颜色等等没办法修改,

这个问题其实是layer的zIndex的优先级太高,而使UEditor 的下拉框无法显示

解决办法

  1. layer.open({
  2. title: '修改服务信息',
  3. type: 1,
  4. skin: 'layui-layer-rim', //加上边框
  5. area: ['820px', '640px'], //宽高
  6. content: $('#tancenguplo'),
  7. //层优先级,
  8. zIndex:1000
  9. });

给弹出层加上zIndex:1000这个值,然后修改ueditor.config.js中zIndex的值,在64行,默认是注释掉的,改为zIndex : 20000000 

 

2·因为没有name属性而需要使用别的方法进行获取值,进行提交

当需要提交表单时因为UEditor没有name属性,所以就需要使用别的方法进行获取到值,我是这样写的

  1. var ue = UE.getEditor('editor'); //实例化编辑器
  2. form.on('submit(add)', function(data){
  3. var content = null;
  4. ue.ready(function() {
  5. //获取html内容
  6. content = ue.getContent();
  7. });
  8. $.ajax({
  9. })
  10. return false;
  11. });

$.ajax中写你的参数,其中UEditor的html值可以直接使用content

3·使用ajax从数据库中读取数据对UEditor 赋值,以及重新赋值

后台处理:当我们使用ajax回调函数,需要对UEditor赋值从数据库中读取的值时,需要在php中对数据库中的值进行转义。使用htmlspecialchars_decode,代码如下,可根据自身项目实际,进行修改

$succ_data['content'] = htmlspecialchars_decode($succ_data['content']);

前台处理:数据得到后就需要进行赋值,代码如下

  1. //先定义两个全局变量
  2. var ue2 = null;
  3. var content = null;
  4. //弹出层:修改信息
  5. $(".mybtn2").on('click',function(){
  6. var id = $(this).attr("id");
  7. $.ajax({
  8. url:"",
  9. data:{
  10. },
  11. success:function(e){
  12. //对数据进行格式转换
  13. var e = JSON.parse(e)
  14. //获取对UEditor赋值的值
  15. content = e.content
  16. //实例化编辑器
  17. ue2 = UE.getEditor('editor2');
  18. ue2.ready(function() {
  19. //对编辑器进行赋值
  20. ue2.setContent(content);
  21. })
  22. form.val("formuplo",{
  23. })
  24. layer.open({
  25. title: '',
  26. type: 1,
  27. skin: 'layui-layer-rim', //加上边框
  28. area: ['820px', '640px'], //宽高
  29. content: $('#tancenguplo'),
  30. //层优先级,
  31. zIndex:1000
  32. });
  33. }
  34. })
  35. })

之所以将content定义到全局变量,是为了每次关闭弹框再打开时都会重新赋值。

 

希望对大家有所帮助

end;

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/155735
推荐阅读
相关标签
  

闽ICP备14008679号