主题: 如何在外部插入图片到编辑器4.1.2版本
作者: 天马行凶, 发布日期: 2012-09-26 11:16:01, 浏览数: 3785

我弄了个上传组件。想在编辑器外部上传后,点击按钮或者直接点击图片就可以插入图片到编辑器焦点处。

function abc(){
			KE.util.focus("#content1");
			KE.util.selection("#content1");
			KE.util.insertHtml("#content1", "图片代码");
		}

 

<input name="" type="button" onClick="abc();" value="插入">

 

这个是我浏览论坛找到的代码改的。只是想测试把"图片代码"几个字插入编辑器中。但是不成功。求解,万分感谢!

 我用的是4.1.2版本

作者: 小浪子, 发布日期: 2012-09-26 13:06:18
回复
作者: 天马行凶, 发布日期: 2012-09-26 15:26:04

回复小浪子:

您好,十分感谢您。现在按你给网址的方法能作用了。

但是因为我是在编辑器外部有一个直接显示上传图片的列表,想点击图片插入编辑器焦点处。所以这里要传递参数:图片的ID、图片路径。按您提供的方法好像不行。。。。

能不能以一个函数的方式来做呢?请指教下,谢谢。

回复
作者: 小浪子, 发布日期: 2012-09-26 16:18:45
回复天马行凶:
function InEditorVal(ObjEditor, Value) {
    if (Value != '' && Value != null) {
        ObjEditor.insertHtml(Value);
    }
}
回复
作者: 天马行凶, 发布日期: 2012-09-27 08:57:10

回复小浪子:

请问浪子哥,这个ObjEditor参数应该是什么?我用如下代码,没反应哦。。。

<input name="abc" id="insertHtml" type="button" onClick="InEditorVal(document.getElementById('content1'),'测试')" value="插入">

我JS是新手。。。哈哈,见谅。

真心感谢!

回复
作者: 小浪子, 发布日期: 2012-09-27 10:34:35

回复天马行凶:编辑器的对象

一般创建编辑器的时候为:editor就看你的是不是了。

回复
作者: 天马行凶, 发布日期: 2012-09-29 09:26:23

回复小浪子:测试过了。。还是毫无反应的。。。

具体这个函数是不是要放在什么位置的?

有没有演示的文档啊?

回复
作者: 小浪子, 发布日期: 2012-09-29 13:13:35

回复天马行凶:你咋这么笨呢。

看这个页面代码:http://www.kindsoft.net/ke4/examples/default.html

有段:

var editor;
KindEditor.ready(function(K) {

 

editor就是我写那个函数的对象

 调用函数:InEditorVal(editor,'插入到编辑试试看')

回复
作者: 天马行凶, 发布日期: 2012-10-07 17:09:12

我已经是按照你的方法了。还是不行。

你试过可以吗?这个函数要放在什么位置啊?

回复
作者: 小浪子, 发布日期: 2012-10-07 22:56:08
回复天马行凶:不是试过。是现在一直都在用。
回复
作者: 天马行凶, 发布日期: 2012-10-08 08:59:18
KindEditor.ready(function(K) {
			var editor = K.create('textarea[name="content1"]', {
			
				afterCreate : function() {
					var self = this;
					K.ctrl(document, 13, function() {
						self.sync();
						K('form[name=myform]')[0].submit();
					});
					K.ctrl(self.edit.doc, 13, function() {
						self.sync();
						K('form[name=myform]')[0].submit();
					});
				}
			});			

			function InEditorVal(ObjEditor, Value) {
				if (Value != '' && Value != null) {       
					ObjEditor.insertHtml(Value);   
				 }
			}
			prettyPrint();
		});

 

<input name="" type="button" value="add" onclick="InEditorVal(editor,'测试');" />
是这样吧?但是没有反应啊
回复
作者: 小浪子, 发布日期: 2012-10-08 09:39:21
回复天马行凶:
var editor;
KindEditor.ready(function(K) {
    editor = K.create('textarea[name="content1"]', {
        afterCreate: function() {
            var self = this;
            K.ctrl(document, 13,
            function() {
                self.sync();
                K('form[name=myform]')[0].submit();
            });
            K.ctrl(self.edit.doc, 13,
            function() {
                self.sync();
                K('form[name=myform]')[0].submit();
            });
        }
    });
    prettyPrint();
});
function InEditorVal(ObjEditor, Value) {
    if (Value != '' && Value != null) {
        ObjEditor.insertHtml(Value);
    }
}
试试
回复
作者: 天马行凶, 发布日期: 2012-10-08 09:54:34

回复小浪子:可以了,万分感谢。你太好人了。谢谢啊。

问题出在var editor 。要在外面声明。呵呵。非常感谢

回复
作者: 小浪子, 发布日期: 2012-10-08 10:04:48
回复天马行凶:我不是好人。
回复
发表新帖 发表回复