ExtJS HtmlEditor在指定光标位置插入图片

一、给htmleditor添加一个上传图片的按钮

{

   xtype: 'htmleditor',

   id: 'htmleditor', 
  width:
500,
  height:
400,
  name:
'content',
  fieldLabel:
'内容',
   labelWidth:
100,
   listeners: {
    afterrender: {
      fn:
function (obj) {
        //添加工具-上传图片
        obj.getToolbar().insert(6
, [ {
          iconCls:
'uploadfile-add-image', //样式自定义
          tooltip: { title:
'上传图片', text: '上传图片' },
          handler:
function () {
            //上传图片到服务器
          } 
        },
'-' ]);
      }
    }
  }
}

二、将图片插入到光标位置

图片上传到服务器后返回一个图片路径,将图片插入到光标位置

var obj= Ext.getCmp('htmleditor1');

var sel = obj.win.getSelection();

var cur = sel.focusOffset; //htmleditor光标位置

var val = obj.getValue();

var val1 = val.substring(0, cur - 1);

var val2 = val.substring(cur - 1, val.length);

obj.setValue(val1 + '<img src="路径"/>' + val2);

你可能感兴趣的:(editor)