TinyMCE要求阻止发送表格

时间:2017-07-12 09:57:16

标签: javascript php cakephp tinymce

我有TinyMCE的问题。在我基于CakePHP v3的应用程序中,我有一个表单来添加忠诚度任务。有一个字段使用tinymce来描述任务。

所以问题是当我用数据填写表单并单击提交按钮时没有任何反应。还有更多的形式来编辑任务,它完美地工作(完全相同)。没有为有问题的表单添加自定义JS。

我知道在textarea上使用TinyMCE会导致问题,因为当我禁用它时它会完美运行。

一些代码:
TinyMCE初始化:

tinymce.init({
    selector: 'textarea.tinymce',
    height: 500,
    plugins: [
        "advlist autolink link image lists charmap preview hr anchor image",
        "wordcount visualblocks visualchars fullscreen insertdatetime nonbreaking",
        "table paste"
    ],
    toolbar1: "undo redo cut copy paste | bold italic underline strikethrough subscript superscript | alignleft aligncenter alignright alignjustify | table",
    toolbar2: "formatselect | outdent indent | bullist numlist | blockquote link unlink charmap hr image | preview",
    menubar: false,
    content_css: [
        '//www.tinymce.com/css/codepen.min.css'
    ]
});

表格(删除了一些元素):

<?= $this->Form->create(null, ['enctype'=>'multipart/form-data']); ?>
<div class="col-xs-12">
    <div class="form-group">
        <label>Tytuł</label>
        <input type="text" name="title" class="form-control" required="required"/>
    </div>
</div>
//additional elements
<div class="col-xs-12">
    <div class="form-group">
        <label>Treść zadania</label>
        <textarea name="task" class="form-control tinymce" required="required"></textarea>
    </div>
    <input type="submit" class="" value="Dodaj"/>
</div>
<?= $this->Form->end(); ?>

TinyMCE的旧版本:4.6.4(最新)

2 个答案:

答案 0 :(得分:3)

感谢您的快速回复,但我在tinymce支持论坛上找到了答案。

对于遇到此问题的其他人:只需将下面的代码添加到您的tinyMCE初始化中。

setup: function (editor) {
    editor.on('change', function (e) {
        editor.save();
    });
}

答案 1 :(得分:0)

您的编辑表单可能与添加表单相同,但如果是编辑,您将在必填字段中包含一些数据,因此required选项不会导致任何问题。在添加表单中有相反的情况 - 您有空字段,验证失败。要解决此问题,您可以从tinymce输入中删除required="required",并在客户端的js或服务器上的cakephp表类中执行其他验证。