I got Cannot read property 'setContent' of null, when i want to using setContent function. Intended for set value in text editor generated by Tinymce library. Is am wrong to implemented it?Below is my snippet code:
<textarea name="content"></textarea>
<script src="assets/tinymce/tinymce.min.js"></script>
<script>
tinymce.init({
selector:'textarea'
});
tinymce.activeEditor.setContent('custom');
</script>
Does anyone knows about this problem? Thanks! any effort would be appreciated
I got Cannot read property 'setContent' of null, when i want to using setContent function. Intended for set value in text editor generated by Tinymce library. Is am wrong to implemented it?Below is my snippet code:
<textarea name="content"></textarea>
<script src="assets/tinymce/tinymce.min.js"></script>
<script>
tinymce.init({
selector:'textarea'
});
tinymce.activeEditor.setContent('custom');
</script>
Does anyone knows about this problem? Thanks! any effort would be appreciated
Share Improve this question edited Mar 7, 2019 at 5:10 Darth Veyda 8882 gold badges12 silver badges23 bronze badges asked Jun 27, 2015 at 4:46 crayoncrayon 811 gold badge1 silver badge11 bronze badges3 Answers
Reset to default 16You have to wait until the editor is initialized:
tinymce.init({
selector:'textarea',
init_instance_callback : function(editor) {
editor.setContent('custom');
}
});
Real late to the party, but tinyMCE.init also has setup configuration option which allows to add any event handlers to the specific editor being initialised:
tinymce.init({
setup: editor => {
editor.on('init', () => {
editor.setContent('custom');
});
}
});
There is other turn around for your solution:
Call setContent within $( window ).load(function(){}) but you have initialize jquery first.
Modified code will look like below:
<textarea name="content"></textarea>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="assets/tinymce/tinymce.min.js"></script>
<script>
tinymce.init({
selector:'textarea'
});
$( window ).load(function(){
tinymce.activeEditor.setContent('custom');
});
</script>