JS获取FckEditor的值
function createEditor()
{
fck=new FCKeditor("fckeditor"); //实例一个编辑器
fck.BasePath="./fckeditor/"; //指定路径
fck.Height="100%";
fck.Width="100%";
$("textarea").html(fck.CreateHtml());
}
//获取编辑器中HTML内容
function getEditorHTMLContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return(oEditor.GetXHTML(true));
}
// 获取编辑器中文字内容
function getEditorTextContents(EditorName) {
var oEditor = FCKeditorAPI.GetInstance(EditorName);
return(oEditor.EditorDocument.body.innerText);
}
// 设置编辑器中内容
function SetEditorContents(EditorName, ContentStr) {
var oEditor = FCKeditorAPI.GetInstance(EditorName) ;
oEditor.SetHTML(ContentStr) ;
}
--------------------------------------------------------------------------
在JS里取值方法如下:
JavaScript代码
var checkContent =FCKeditorAPI.GetInstance("content").GetXHTML();
另外还要让编辑器获得焦点:
JavaScript代码
var oEditor = FCKeditorAPI.GetInstance('content');
oEditor.Focus();
注意这里的Focus()是大写。
------------------------------------------------------------------
在JS里取值方法如下:var checkContent =FCKeditorAPI.GetInstance("content").GetXHTML();
长度验证:FCKeditorAPI.GetInstance("content").GetXHTML().length;
另外还要让编辑器获得焦点:var oEditor = FCKeditorAPI.GetInstance('content');oEditor.Focus();
FCK 编辑器加载后,将会注册一个全局的 FCKeditorAPI 对象. FCKeditorAPI 对象在页面加载期间是无效的,直到页面加载完成.如果需要交互式地知道 FCK 编辑器已经加载完成,可使用"FCKeditor_OnComplete"函数.
<script type="text/javascript">
function FCKeditor_OnComplete(editorInstance) {
FCKeditorAPI.GetInstance('FCKeditor1').Commands.GetCommand('FitWindow').Execute();
}
</script>
在当前页获得FCK 编辑器实例: var oEditor = FCKeditorAPI.GetInstance('InstanceName');
从 FCK 编辑器的弹出窗口中获得FCK 编辑器实例: var oEditor = window.parent.InnerDialogLoaded().FCK;
从框架页面的子框架中获得其它子框架的FCK 编辑器实例: var oEditor = window.FrameName.FCKeditorAPI.GetInstance('InstanceName');
从页面弹出窗口中获得父窗口的FCK 编辑器实例: var oEditor = opener.FCKeditorAPI.GetInstance('InstanceName');
获得FCK 编辑器的内容: oEditor.GetXHTML(formatted); // formatted 为:true|false,表示是否按HTML格式取出也可用: oEditor.GetXHTML();
设置FCK 编辑器的内容: oEditor.SetHTML("content", false); // 第二个参数为:true|false,是否以所见即所得方式设置其内容.此方法常用于"设置初始值"或"表单重置"操作.
插入内容到FCK 编辑器: oEditor.InsertHtml("html"); // "html"为HTML文本
检查FCK 编辑器内容是否发生变化: oEditor.IsDirty();
在 FCK 编辑器之外调用FCK 编辑器工具条命令, 命令列表如下:
DocProps, Templates, Link, Unlink, Anchor, BulletedList, NumberedList, About, Find, Replace, Image, Flash, SpecialChar, Smiley, Table, TableProp, TableCellProp, UniversalKey, Style, FontName, FontSize, FontFormat, Source, Preview, Save, NewPage, PageBreak, TextColor, BGColor, PasteText, PasteWord, TableInsertRow, TableDeleteRows, TableInsertColumn, TableDeleteColumns, TableInsertCell, TableDeleteCells, TableMergeCells, TableSplitCell, TableDelete, Form, Checkbox, Radio, TextField, Textarea, HiddenField, Button, Select, ImageButton, SpellCheck, FitWindow, Undo, Redo
------------------------------------------------------------------------------------------------
补充:
上面的验证fck内容是否为空是有问题的,fck默认就往里写了些内容,直接判断为空显然不行。
解决办法:
//取fck内容的长度
function GetMessageLength(str) {
var oEditor = FCKeditorAPI.GetInstance(str) ;
var oDOM = oEditor.EditorDocument ;
var iLength ;
if ( document.all ) // If Internet Explorer.
{
iLength = oDOM.body.innerText.length ;
}
else // If Firefox.
{
var r = oDOM.createRange() ;
r.selectNodeContents( oDOM.body ) ;
iLength = r.toString().length ;
}
return iLength
}
var oEditor = FCKeditorAPI.GetInstance(''InstanceName'');
var checkContent = GetMessageLength('InstanceName');
if(checkContent == '0') {
alert('请输入消息内容');
oEditor.Focus(); //取得焦点,注意是大写
return false;
}
//取fck内容
function GetMessageContent(str)
{
var oEditor = FCKeditorAPI.GetInstance(str) ;
return oEditor.GetXHTML();
}