我在newedit.js文件中有以下脚本。
$(document).ready(function() {
$("[id^=save]").click(function() {
$("#scholarship-short_desc").val("test");
alert($("#scholarship-short_desc").val());
$("form").submit();
});
$("#scholarship-short_desc").ckeditor();
});
我的html文件中也有以下条目。我正在使用ckeditor 3.6.5。
<script src="/myapp/javascripts/ckeditor/ckeditor.js" type="text/javascript"></script>
<script src="/myapp/javascripts/ckeditor/adapters/jquery.js" type="text/javascript"></script>
<script src="/myapp/javascripts/scholarships/newedit.js" type="text/javascript"></script>
这会在我的页面中正确显示ckeditor。但是当我尝试使用val函数设置textarea的值时(如here (ckeditor's jquery guide)所述),该值未被设置。
有什么想法吗?谢谢! :)
答案 0 :(得分:2)
CKEditor不会在您的textarea上运行,而是在iframe中启用的合成contenteditable-enabled html页面上运行。您可以这样设置编辑器的新内容:
CKEDITOR.instances.yourInstanceName.setData( '<h1>Your HTML</h1>' );
如果您真的想要将编辑器与其textarea同步:
CKEDITOR.instances.yourInstanceName.updateElement();
当您致电时,这也会自动发生:
CKEDITOR.instances.yourInstanceName.destroy()
您可以通过浏览yourInstanceName
对象或阅读textarea的ID /名称(取决于您创建编辑器的方式)找到CKEDITOR.instances
。
快乐的编码! ;)