Javascript 从PHP函数运行时,TinyMCE仅显示简单的文本区域框

Javascript 从PHP函数运行时,TinyMCE仅显示简单的文本区域框,javascript,php,tinymce,tinymce-4,Javascript,Php,Tinymce,Tinymce 4,我用一个php脚本就可以让TinyMCE完美地工作,但是当我用php函数将它分解为包含在我的站点中时,我只得到一个空白的文本框。经过几次测试,我得出结论,问题在于TinyMCE传递的URL。下面的代码可以完美地工作: //localhost/include/textarea.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr

我用一个php脚本就可以让TinyMCE完美地工作,但是当我用php函数将它分解为包含在我的站点中时,我只得到一个空白的文本框。经过几次测试,我得出结论,问题在于TinyMCE传递的URL。下面的代码可以完美地工作: //localhost/include/textarea.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="http://localhost/tinymce/tinymce.min.js"></script>
<script type="text/javascript">
    tinymce.init({
        selector: "#addingTextarea",
        theme: "modern",
        menubar: "false",
        theme_advanced_font_sizes: "10px,12px,13px,14px,16px,18px,20px",
        font_size_style_values: "12px,13px,14px,16px,18px,20px",
        plugins: [
            "smileys textcolor wordcount "
        ],
        toolbar1: "fontselect |  fontsizeselect | bold | italic | forecolor | backcolor | smileys",
        image_advtab: false,
    });
</script>
</head>

<body>
<?php
include'../include/textareafunc.php';
TextAreastart();
?>
</body>
</html>

tinymce.init({
选择器:“#添加文本区域”,
主题:“现代”,
菜单栏:“错误”,
主题高级字体大小:“10px,12px,13px,14px,16px,18px,20px”,
字体大小样式值:“12px,13px,14px,16px,18px,20px”,
插件:[
“微笑文字颜色字数”
],
工具栏1:“字体选择|字体大小选择|粗体|斜体|前景色|背景色|微笑”,
图像\u advtab:false,
});
localhost/include/textarefunc.php

<?php
function TextAreastart()
{
    TextAreaNew();
}

function TextAreaNew()
{
?>
<form method="post" action="somepage">
    <textarea id="addingTextarea" name="content3" style="width:90%"></textarea>
</form>
<?php
}
?>

是的,这些功能看起来是多余的,但我想把它复杂化,以保证它能满足我的需要。结果是TinyMCE textrea功能正常。然而,当我将这两个Java脚本C&P到头部的localhost/index.php中,并从localhost/include/profilefunc.php调用Textareastart函数时,我得到的只是一个没有TinyMCE特性的被诅咒的textarea。 我检查了TinyMCE网站,发现了一些关于URL方向的信息,因此我尝试在localhost/index.php中修改JavaScript,如下所示:

<script type="text/javascript">
    tinymce.init({
        selector: "#addingTextarea",
        theme: "modern",
        menubar: "false",
        relative_urls: true,
        document_base_url: 'http://localhost/tinymce/',
        theme_advanced_font_sizes: "10px,12px,13px,14px,16px,18px,20px",
        font_size_style_values: "12px,13px,14px,16px,18px,20px",
        plugins: [
            "smileys textcolor wordcount "
        ],
        toolbar1: "fontselect |  fontsizeselect | bold | italic | forecolor | backcolor | smileys",
        image_advtab: false,
    });
</script>

tinymce.init({
选择器:“#添加文本区域”,
主题:“现代”,
菜单栏:“错误”,
相对URL:true,
文档库url:'http://localhost/tinymce/',
主题高级字体大小:“10px,12px,13px,14px,16px,18px,20px”,
字体大小样式值:“12px,13px,14px,16px,18px,20px”,
插件:[
“微笑文字颜色字数”
],
工具栏1:“字体选择|字体大小选择|粗体|斜体|前景色|背景色|微笑”,
图像\u advtab:false,
});
以及:

<script type="text/javascript">
$( document ).ready(function() {
    tinymce.init({
        selector: "#addingTextarea",
        theme: "modern",
        menubar: "false",
        relative_urls: true,
        document_base_url: 'http://localhost/tinymce/',
        theme_advanced_font_sizes: "10px,12px,13px,14px,16px,18px,20px",
        font_size_style_values: "12px,13px,14px,16px,18px,20px",
        plugins: [
            "smileys textcolor wordcount "
        ],
        toolbar1: "fontselect |  fontsizeselect | bold | italic | forecolor | backcolor | smileys",
        image_advtab: false,
    });
});
</script>

$(文档).ready(函数(){
tinymce.init({
选择器:“#添加文本区域”,
主题:“现代”,
菜单栏:“错误”,
相对URL:true,
文档库url:'http://localhost/tinymce/',
主题高级字体大小:“10px,12px,13px,14px,16px,18px,20px”,
字体大小样式值:“12px,13px,14px,16px,18px,20px”,
插件:[
“微笑文字颜色字数”
],
工具栏1:“字体选择|字体大小选择|粗体|斜体|前景色|背景色|微笑”,
图像\u advtab:false,
});
});

但这并没有改变什么。我做错了什么?

问题:在php函数之前以及它搜索textarea id时,您已经初始化了tinymce。。直到那时它才拿到身份证。因为在tinymce之后包含了php函数。所以

只要做一点小小的改变:

在初始化tinymce之前包含php文件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script type="text/javascript" src="http://localhost/tinymce/tinymce.min.js"></script>
    </head>    
    <body>
    <?php
    include'../include/textareafunc.php';
    TextAreastart();
    ?>
    <script type="text/javascript">
        tinymce.init({
            selector: "#addingTextarea",
            theme: "modern",
            menubar: "false",
            theme_advanced_font_sizes: "10px,12px,13px,14px,16px,18px,20px",
            font_size_style_values: "12px,13px,14px,16px,18px,20px",
            plugins: [
                "smileys textcolor wordcount "
            ],
            toolbar1: "fontselect |  fontsizeselect | bold | italic | forecolor | backcolor | smileys",
            image_advtab: false,
        });
    </script>

    </body>
    </html>

tinymce.init({
选择器:“#添加文本区域”,
主题:“现代”,
菜单栏:“错误”,
主题高级字体大小:“10px,12px,13px,14px,16px,18px,20px”,
字体大小样式值:“12px,13px,14px,16px,18px,20px”,
插件:[
“微笑文字颜色字数”
],
工具栏1:“字体选择|字体大小选择|粗体|斜体|前景色|背景色|微笑”,
图像\u advtab:false,
});

我真的需要解决这个问题。TinyMCE论坛并不是在寻找答案,所以我依赖于你们的结果。它本身运行得很好,但从“include”运行时失败。您真的需要使用include。如果是的话。然后尝试将
textarea
tinymce.init
放在一起,然后包含。或者尝试不使用include。