我有一个foreach循环显示表中的记录,但CKEDITOR只替换第一个记录。 当我点击某些记录从html表更新时,它只是格式化第一条记录
//CKEDITOR.replace('about');
<?php foreach($GetAll as $get) : ?>
<div class="form-group"> <label>Short Description</label>
<textarea class="form-control" name="about" rows="3"><?php echo $get->description?></textarea>
<script type='text/javascript'>
CKEDITOR.replace('about');
</script>
</div>
<?php endforeach ; ?>
答案 0 :(得分:1)
您需要使用CKEditor.replaceAll()代替CKEditor.replace()。
请注意,在创建DOM元素之后,应该只在循环的每次迭代中调用此方法一次。然后每个元素必须具有不同的名称,但使用相同的类。例如:
<textarea class="about form-control" name="about1"></textarea>
<textarea class="about form-control" name="about2"></textarea>
<textarea class="about form-control" name="about3"></textarea>
<script type='text/javascript'>
CKEDITOR.replaceAll('about');
</script>
答案 1 :(得分:1)
如果要将所有textarea元素替换为CKEditor,只需调用:
<script>
/* Replace all <textarea> elements in the page. */
CKEDITOR.replaceAll();
</script>
在所有textarea元素之后;