一般来说,我们在编辑内容时,先是读入到 textarea,再将 textarea 的内容赋给编辑器。(方法一是转载)
因为直接把内容作为字符串给编辑器的 Value 属性赋值使用的是 JavaScript 代码,要让 JS 代码不受内容中双引号、换行等的干扰,只有先读入到 textarea 最方便。
使用 CKeditor 3.2 复制代码 代码如下:
<textarea cols="90" rows="10" id="content" name="content">cftea</textarea> <script type="text/javascript" src="ckeditor/ckeditor.js"></script> <script type="text/javascript"> <!-- CKEDITOR.replace("content"); //--> </script>
可以看出,3.x 版本的使用非常方便,也不用担心会形成两个同名的 content。实际上 textarea 的 id 省略了也是可以的,因为 CKEditor 会先按 name 来查找,查找不到,再按 id 来查找。
并且编辑器会在 textarea 的位置替换原有的 textarea。
设置编辑器皮肤、宽高 复制代码 代码如下:
<textarea cols="90" rows="10" id="content" name="content">cftea</textarea> <script type="text/javascript" src="ckeditor/ckeditor.js"></script> <script type="text/javascript"> <!-- CKEDITOR.replace("content", { skin: "kama", width:700, height:300 }); //--> </script>
skin 值应该是 ckeditor/skins 文件夹下的某个文件夹名称,如果指向不存在的皮肤,则不会显示编辑器。
设置值、取值
设置值
CKEDITOR.instances.content.setData("脚本之家"); // content 就是前面 CKEDITOR.replace 的第一个参数值 或 复制代码 代码如下:
var editor = CKEDITOR.replace("content"); editor.setData("脚本之家");
取值
alert(CKEDITOR.instances.content.getData()); // content 就是前面 CKEDITOR.replace 的第一个参数值 或
var editor = CKEDITOR.replace("content"); alert(editor.getData()); 插入图片
若要演示此示例,最好是放在按钮的事件处理程序中,目的是有些延迟。
CKEDITOR.instances.content.insertHtml("<img src=...>");
下面是另一种引用方式,这就不详细说了,直接粘贴代码
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="../Scripts/ckeditor/ckeditor.js" type="text/javascript"></script>
<style type="text/css">
.ckeditor
{
margin-top: inherit;
margin-left: 100px;
margin-right: 100px;
}
</style>
</head>
<body style="width: 317px; height: 190px">
<form id="form1" runat="server">
<div>
</div>
<asp:TextBox ID="TextBox1" runat="server" Height="169px" TextMode="MultiLine" Width="348px"
CssClass="ckeditor"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
</form>
</body>
</html>