所见即所得编辑器不适用于通过 ajax-php 调用生成的文本区域
WYSIWYG editor does not work on textarea that are generated through ajax-php calls
我有一个文本区域,我用 ajax 生成它,但是在加载文本区域之后,文本区域没有转换为所见即所得编辑器,但它在普通文本区域上工作,请帮助解决我的问题.
<!DOCTYPE html>
<html>
<head>
........
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>" + "dashboard/show_data",
cache: false,
dataType: "json",
success: function(data){
$('#demo').html(data);
........
<script src="//tinymce.cachefly.net/4.2/tinymce.min.js"></script>
<script>tinymce.init({selector:'textarea'});</script>
</head>
<body>
<textarea>Easy! You should check out MoxieManager!</textarea>
<section id="demo">
</section>
</body>
</html>
show_data.php
<textarea></textarea>
尝试添加这个
tinymce.init({selector:'textarea'});
将 HTML 放入演示元素后。不然Google怎么用jQueryon
。你的问题是 mce 编辑器需要绑定到新的 dom 元素,如果你不告诉它就不会。
问题是在执行 ajax success 函数时,tinymce 编辑器已经初始化。
解决这个问题很简单。您只需成功初始化新编辑器即可:
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>" + "dashboard/show_data",
cache: false,
dataType: "json",
success: function(data){
$('#demo').html(data);
//put the initial init function here instead
tinymce.init({selector:'textarea'});
// **or** better in case you know the textarea id use
tinymce.init({ selector: "#textarea_id" });
........
我有一个文本区域,我用 ajax 生成它,但是在加载文本区域之后,文本区域没有转换为所见即所得编辑器,但它在普通文本区域上工作,请帮助解决我的问题.
<!DOCTYPE html>
<html>
<head>
........
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>" + "dashboard/show_data",
cache: false,
dataType: "json",
success: function(data){
$('#demo').html(data);
........
<script src="//tinymce.cachefly.net/4.2/tinymce.min.js"></script>
<script>tinymce.init({selector:'textarea'});</script>
</head>
<body>
<textarea>Easy! You should check out MoxieManager!</textarea>
<section id="demo">
</section>
</body>
</html>
show_data.php
<textarea></textarea>
尝试添加这个
tinymce.init({selector:'textarea'});
将 HTML 放入演示元素后。不然Google怎么用jQueryon
。你的问题是 mce 编辑器需要绑定到新的 dom 元素,如果你不告诉它就不会。
问题是在执行 ajax success 函数时,tinymce 编辑器已经初始化。
解决这个问题很简单。您只需成功初始化新编辑器即可:
$.ajax({
type: "POST",
url: "<?php echo base_url(); ?>" + "dashboard/show_data",
cache: false,
dataType: "json",
success: function(data){
$('#demo').html(data);
//put the initial init function here instead
tinymce.init({selector:'textarea'});
// **or** better in case you know the textarea id use
tinymce.init({ selector: "#textarea_id" });
........