Laravel 5.5本地化和CKEditor

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel 5.5本地化和CKEditor相关的知识,希望对你有一定的参考价值。

我想用ckeditor替换多个textarea(Content En和Content Ru),但它们都具有相同的ID。该怎么办,因为在加载一个编辑器后,它会停止。

形成:

{!! Form::open([ 'route' => 'portfolio.store', 'files' => 'true']) !!}

        @foreach(config('translatable.locales') as $locale)
            <div class="form-group">
                <label for="translation[{{$locale}}][title]"><strong>Title ({{$locale}})</strong></label>
                <input type="text" id="title"
                       name="translation[{{$locale}}][title]"
                       class="form-control"
                       value="{{ old('translation.'. $locale.'.title')  }}">
            </div>

            <div class="form-group">
                <label for="translation[{{$locale}}][content]"><strong>Content ({{$locale}})</strong></label>
                <textarea name="translation[{{$locale}}][content]"
                          id="content"
                          class="form-control"
                          cols="30"
                          rows="10">{{ old('translation.'. $locale.'.content') }}</textarea>
            </div>
        @endforeach

            <div class="form-group">
                <label for="image"><strong>Image</strong></label>
                <input type="file" id="image" name="image" class="form-control-file">
            </div>
            <br>

            <input class="btn btn-success btn-lg btn-block" type="submit" value="Add Portfolio">
    {!! Form::close() !!}

脚本:

<script>
    CKEDITOR.replace( 'content' );
</script>

enter image description here

答案

我可以从CKEditor的角度解释它是如何工作的。

请参阅:https://ckeditor.com/docs/ckeditor4/latest/api/CKEDITOR.html#cfg-replaceClasshttp://nightly.ckeditor.com/18-09-06-06-04/full/samples/old/replacebyclass.html

CKEditor allwos替换多个textareas,只要他们分配了一个特定的CSS类(默认为ckeditor)。您需要做的就是在html文档的标题部分附加CKEditor脚本,然后添加一堆<textarea class="ckeditor" name="editor1"></textarea>元素。它们应该自动更改为编辑器。

或者,您可以使用随机textarea生成id's元素,收集那些id's然后在循环中运行replace方法,使用迭代步骤中的id

以上是关于Laravel 5.5本地化和CKEditor的主要内容,如果未能解决你的问题,请参考以下文章

使用 Laravel 5.5 在实时数据库上调用存储过程会引发内存错误

markdown Kickstart Laravel 5.5 App开发dengan前端预设vuejs di本地机器。

Laravel在CKEDITOR上传图片

laravel 5.5 安装

laravel 项目本地版本为5.5,线上mysql 为5.7.21版本,执行严格模式

Laravel 5.5 中的用户 IP 地址和位置