The following snippet allows you to add a WYSIWYG field to a Frontend Form that works with Content REST API.
var fieldValue = tinymce.get('yourFieldVelVarName').getContent();
#set($wysiwygField = 'yourFieldVelVarName')
<script type="text/javascript" src="/html/js/content/content_form_macro.js"></script>
<script src="/html/js/tinymce/js/tinymce/tinymce.js" type="text/javascript"></script>
<script type="text/javascript">
tinyMCE.baseURL = "/html/js/tinymce/js/tinymce/";
tinyMCE.init({
mode : "none",
theme : "advanced",
theme_advanced_blockformats : "p,h1,h2,h3,code",
theme_advanced_toolbar_align : "left",
theme_advanced_buttons1 : "bold,italic,underline,undo,redo,bullist,numlist,link,separator,formatselect",
theme_advanced_buttons2 : "",
theme_advanced_buttons3 : ""
});
function enableWYSIWYG(textAreaId){
try {
tinyMCE.execCommand('mceAddControl', false, textAreaId);
}catch(e){
alert(e.message);
}
enabledWYSIWYG[textAreaId] = true;
}
</script>
<textarea dojoType="dijit.form.Textarea" name="$!{wysiwygField}" id="$!{wysiwygField}" class="textAreaField">
</textarea><span id="alert$!{wysiwygField}" class="errorMessages"></span>
<script type="text/javascript">
enableWYSIWYG("$!{wysiwygField}");
</script>