在做一个项目,因为考虑到图片上传后,需要将图片插入Fckeditor中,实现此功能的方法也很简单。
function insertToArticle(picUrl)
{
var oEditor = FCKeditorAPI.GetInstance("tbtext");
if(oEditor.EditMode == FCK_EDITMODE_WYSIWYG)
{
oEditor.InsertHtml("<img src='" + picUrl + "' alt='' />");
}
}
其中,"tbtext"为Fckeditor的ID,只需输入图片的地址就可调用此方法;
然而,在图片上传的单击事件中,调用的方法如下:
ClientScript.RegisterClientScriptBlock(this.GetType(), "", "<script>parent.insertToArticle('" + cu.Source + "');</script>");
其中,cu.Source是我一个图片上传组件中的一个属性,即是:图片的原始路径。
当调用时出就抛出"FckEditorAPI未定义"的错误;
呵呵,这也是一个低级错误啦;
因为JavaScript的执行是线性的,根据文档加载的先后顺序依次执行。
文档加载完毕之后,可以随意调用文档中有定义的任一函数;文档加载完毕之前,只能调用前面已经加载的函数。
像下面这个例子是会出错的!