我正在使用Laravel 5.7和名为laravel-ckeditor的软件包,但无法调用ck-editor文本区域。
我将包和脚本这样包含在我的视图中(这会将它们加载到文件底部的</body>
标签上方):
@section('js')
<script src="{{asset('js/render_select2.js')}}" charset="utf-8"></script>
<script src="/vendor/unisharp/laravel-ckeditor/ckeditor.js"></script>
<script src="{{asset('js/render_ckeditor.js')}}" charset="utf-8"></script>
@endsection
ckeditor.js
文件已正确加载,查看页面源代码时可以将其打开。
我什至已将应用程序服务提供商添加到我的app.php
文件中并发布了资产。
jQuery。 jQuery之所以有效,是因为我可以在其他脚本中使用它而没有任何问题。文件render_ckeditor.js
包含以下行:
$('.ck-textarea').ckeditor();
这是文本区域:
<div class="row">
<div class="col-sm-12">
<div class="form-group">
{{Form::label('description', 'Product description')}}
{{Form::textarea('description', '', ['id' => 'ck-textarea', 'class' => 'form-control ck-textarea', 'style' => 'resize: vertical', 'placeholder' => 'Product description'])}}
</div>
</div>
</div>
我试图通过使用ID而不是类来调用它,将我的render_ckeditor.js
文件更改为:
$('#ck-textarea').ckeditor();
同时使用ID或类会导致此错误消息:
未捕获的TypeError:$(...)。ckeditor不是render_ckeditor.js:1的函数
我在这里想念什么?
答案 0 :(得分:0)
事实证明,我必须包括jQuery适配器(duhh ..),完全忽略了其他include。
添加此按钮即可解决该问题:
<script src="/vendor/unisharp/laravel-ckeditor/adapters/jquery.js"></script>