admin管理员组文章数量:1291716
I want to get only the content of the body element in TinyMce in my project and then inject that part inside another page. when I submit my textarea to my controller the content of tinymce does have , and html tag.
how to get rid of them ? is there any built in functionality inside TinyMce for doing this ?
Here is my code:
<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>
and in my html page :
<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>
I want to get only the content of the body element in TinyMce in my project and then inject that part inside another page. when I submit my textarea to my controller the content of tinymce does have , and html tag.
how to get rid of them ? is there any built in functionality inside TinyMce for doing this ?
Here is my code:
<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>
and in my html page :
<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>
Share
Improve this question
asked Oct 6, 2013 at 13:02
MehdiMehdi
3,7633 gold badges38 silver badges66 bronze badges
3
|
3 Answers
Reset to default 58 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"
],
remove the fullpage plugin from script
This might be simpler:
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)
The "t" value can be then actively placed in the "textarea" value (not setContent()) of the tinymce editor, before sending.
Hope that helps..
Here is the solutions for getting body content and character count
JS FIDDLE DEMO
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));
}
});
}});
本文标签: javascriptremoving htmlheadbody tag inside TinyMCEStack Overflow
版权声明:本文标题:javascript - removing html, head, body tag inside TinyMCE - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1737371174a1985378.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
body
tag take a look at stackoverflow.com/questions/6195615/… – NoWar Commented Dec 25, 2019 at 5:53