MCPcopy
hub / github.com/tinymce/tinymce / save

Method save

modules/tinymce/src/core/main/ts/api/Editor.ts:782–838  ·  view source on GitHub ↗

* Saves the contents from an editor out to the textarea or div element that got converted into an editor instance. * This method will move the HTML contents from the editor into that textarea or div by getContent * so all events etc that method has will get dispatched as well. * * @metho

(args: Partial<EditorContent.GetContentArgs> = {})

Source from the content-addressed store, hash-verified

780 * @return {String} HTML string that got set into the textarea/div.
781 */
782 public save(args: Partial<EditorContent.GetContentArgs> = {}): string {
783 const self = this;
784 let elm: HTMLElement | null = self.getElement();
785
786 if (!elm || !self.initialized || self.removed) {
787 return '';
788 }
789
790 const getArgs: Partial<EditorContent.GetContentArgs> = {
791 ...args,
792 save: true,
793 element: elm
794 };
795
796 let html = self.getContent(getArgs);
797
798 const saveArgs = { ...getArgs, content: html } as SaveContentEvent;
799 if (!saveArgs.no_events) {
800 self.dispatch('SaveContent', saveArgs);
801 }
802
803 // Always run this internal event
804 if (saveArgs.format === 'raw') {
805 self.dispatch('RawSaveContent', saveArgs);
806 }
807
808 html = saveArgs.content;
809
810 if (!NodeType.isTextareaOrInput(elm)) {
811 if (args.is_removing || !self.inline) {
812 elm.innerHTML = html;
813 }
814
815 // Update hidden form element
816 const form = DOM.getParent(self.id, 'form');
817 if (form) {
818 each(form.elements, (elm) => {
819 if ((elm as any).name === self.id) {
820 (elm as any).value = html;
821 return false;
822 } else {
823 return true;
824 }
825 });
826 }
827 } else {
828 elm.value = html;
829 }
830
831 saveArgs.element = getArgs.element = elm = null;
832
833 if (saveArgs.set_dirty !== false) {
834 self.setDirty(false);
835 }
836
837 return html;
838 }
839

Callers 9

removeFunction · 0.80
renderFunction · 0.80
EditorManager.tsFile · 0.80
hideMethod · 0.80
saveFunction · 0.80
registerFunction · 0.80
runTestsFunction · 0.80

Calls 5

getElementMethod · 0.80
getContentMethod · 0.80
setDirtyMethod · 0.80
dispatchMethod · 0.65
eachFunction · 0.50

Tested by

no test coverage detected