javascript - property - title attribute in html
Eliminando html, cabeza, etiqueta de cuerpo dentro de TinyMCE (3)
Quiero obtener solo el contenido del elemento del cuerpo en TinyMce en mi proyecto y luego inyectar esa parte dentro de otra página. cuando envío mi área de texto a mi controlador, el contenido de tinymce sí tiene una etiqueta html.
Cómo deshacerse de ellos ? ¿Hay alguna funcionalidad incorporada dentro de TinyMce para hacer esto?
Aquí está mi código:
<script type="text/javascript">
/*tinymce definition*/
tinymce.init({
selector: "textarea.tinymce",
theme: "modern",
height: 10,
plugins: [
"advlist autolink link image lists charmap print preview hr anchor pagebreak spellchecker example fullpage",
"searchreplace visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
"save table contextmenu directionality emoticons template paste textcolor wordcount"
],
content_css: "css/content.css",
toolbar: "insertfile undo redo | styleselect | save | table | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image | print preview media fullpage | forecolor backcolor emoticons charmap code | hr paste pagebreak searchreplace spellchecker template visualblocks insertdatetime",
style_formats: [
{title: ''Bold text'', inline: ''b''},
{title: ''Red text'', inline: ''span'', styles: {color: ''#ff0000''}},
{title: ''Red header'', block: ''h1'', styles: {color: ''#ff0000''}},
{title: ''Example 1'', inline: ''span'', classes: ''example1''},
{title: ''Example 2'', inline: ''span'', classes: ''example2''},
{title: ''Table styles''},
{title: ''Table row 1'', selector: ''tr'', classes: ''tablerow1''}
]
});
</script>
y en mi página html:
<div class="page-content">
<form action="somewhere" method="post" role="form">
Title:<br/> <input type="text" name="title" style="width:100%"/><br/> <br /> Your Text:<br/>
<textarea name="content" class="tinymce" cols="30" rows="10" ></textarea>
<br /> <br /> <input type="submit" name="submit" />
</form>
</div>
Aquí están las soluciones para obtener el contenido corporal y el recuento de caracteres.
tinymce.init({
selector: "textarea",
toolbar: "mybutton",
setup: function(editor) {
editor.addButton(''mybutton'', {
icon: ''image'',
onclick: function(e) {
console.log(e.target);
console.log(editor.getContent());
var utf8length = 0;
var string = editor.getContent();
for (var n = 0; n < string.length; n++) {
var c = string.charCodeAt(n);
if (c < 128) {
utf8length++;
}
else if((c > 127) && (c < 2048)) {
utf8length = utf8length+2;
}
else {
utf8length = utf8length+3;
}
}
console.log(utf8length);
var str = editor.getContent();
var m = encodeURIComponent(str).match(/%[89ABab]/g);
console.log(editor.getContent());
console.log(str.length + (m ? m.length : 0));
}
});
}});
Esto podría ser más simple:
b = "<body>";
be = "</body>";
t = tinyMCE.activeEditor.getContent();
t = t.substring((t.indexOf(b) + b.length), (t.indexOf(be)-1)) //need substring() (including comment b/c can''t make edit under 6 chars)
El valor "t" se puede colocar luego activamente en el valor "área de texto" (no setContent ()) del editor de tinymce, antes de enviarlo.
Espero que ayude..
plugins: [
"advlist autolink autosave link image lists charmap print preview hr anchor pagebreak spellchecker",
"searchreplace wordcount visualblocks visualchars code fullscreen insertdatetime media nonbreaking",
"save table contextmenu directionality emoticons template textcolor paste fullpage textcolor colorpicker"
],
eliminar el complemento de página completa del script