Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][AJAX]Wiele komponentów CKEditor z ResponsiveFileManager na jednej stronie
Forum PHP.pl > Forum > Przedszkole
trifek
Witam.
Mam 4 komponenty w textarea z ckeditors. Dodadkowo zainstalowałem Responsive File Manager: https://www.responsivefilemanager.com/index...ownload-section

Mam taki kod:
  1.  
  2. $(document).ready(function() {
  3.  
  4. $( ".ckeditor" ).each(function( index ) {
  5. CKEDITOR.replace($( this ).attr("id"),{
  6. filebrowserBrowseUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  7. filebrowserUploadUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  8. filebrowserImageBrowseUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=1&editor=ckeditor&fldr='
  9. });
  10. });
  11. });

Edytorki CK Editora wyświetlają się poprawnie, jednak nie ładuje FileMenagera.

Kiedy dam taki kod:
  1.  
  2. CKEDITOR.replace('ckeditor',{
  3. filebrowserBrowseUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  4. filebrowserUploadUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  5. filebrowserImageBrowseUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=1&editor=ckeditor&fldr='
  6. });
  7.  

Wszystko działa poprawnie, ale tylko z 1 edytorkiem (ale za to działającym FileMenagerem).

Wie ktoś może jak to naprawić?
werdan
  1. $( ".ckeditor" ).each(function( index ) {
  2. CKEDITOR.replace($( this ).attr("id"),
  3.  


Czy każdy element '.ckeditor' ma unikalny id ?
trifek
Cytat(werdan @ 30.09.2018, 21:26:33 ) *
  1. $( ".ckeditor" ).each(function( index ) {
  2. CKEDITOR.replace($( this ).attr("id"),
  3.  


Czy każdy element '.ckeditor' ma unikalny id ?



tak, mają unikalne ID. Edytorki wyświetlają się poprawnie, tylko ten FileMenager nie chce sad.gif
werdan
Poniżej działający przykład:

index.html
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <meta charset="UTF-8">
  4. <title>Title</title>
  5. </head>
  6.  
  7. <textarea class="ckeditor"></textarea>
  8. <textarea class="ckeditor"></textarea>
  9.  
  10.  
  11. <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
  12. <script src="//cdn.ckeditor.com/4.10.1/standard/ckeditor.js"></script>
  13. <script src="script.js"></script>
  14.  
  15. </body>
  16. </html>


script.js

  1. $(function () {
  2. $(document).ready(function () {
  3. $(".ckeditor").each(function () {
  4. var el = $(this)[0];
  5. CKEDITOR.replace(el, {
  6. filebrowserBrowseUrl: 'filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  7. filebrowserUploadUrl: 'filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  8. filebrowserImageBrowseUrl: 'filemanager/dialog.php?type=1&editor=ckeditor&fldr='
  9. });
  10. });
  11. });
  12. });

trifek
Dziękuję bardzo za odpowiedź. Edytorki faktycznie działają, ale nie dodaje do nich FileMenagera ( https://www.responsivefilemanager.com/index...ownload-section )

Mógłbyś zobaczyć z tym komponentem? Dziwne jest to, że jak mam jeden edytorek i ten komponent, tom wszystko działa sad.gif

Działający kod wygląda tak:
  1. $( ".ckeditor" ).each(function( index ) {
  2. CKEDITOR.replace($( this ).attr("id"),{
  3. filebrowserBrowseUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  4. filebrowserUploadUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  5. filebrowserImageBrowseUrl : '{{ pageTemplate.pageHeader.baseHref }}/app-assets/vendors/js/responsive_filemanager/filemanager/dialog.php?type=1&editor=ckeditor&fldr='
  6. });
  7. });



Bardzo proszę o pomoc smile.gif
werdan
W moim przykładzie w obu edytorach mam ResponsiveFileManager
trifek
Już wiem gdzie jest problem smile.gif

W Twoim kodzie mam:
  1. <textarea class="ckeditor" ></textarea>
  2. <textarea class="ckeditor" ></textarea>

A u siebie:
  1. <textarea class="ckeditor" name="name1"></textarea>
  2. <textarea class="ckeditor" name="name2"></textarea>


Jak doda się name to przestaje działać sad.gif
werdan
Działający poprawnie przykład. Dodaj id dla każdego textarea.

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <meta charset="UTF-8">
  4. <title>Title</title>
  5. </head>
  6.  
  7. <textarea class="ckeditor" name="name1" id="id01"></textarea>
  8. <textarea class="ckeditor" name="name2" id="id02"></textarea>
  9.  
  10.  
  11. <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
  12. <script src="//cdn.ckeditor.com/4.10.1/standard/ckeditor.js"></script>
  13. <script src="script.js"></script>
  14.  
  15. </body>
  16. </html>


script.js
  1. $(function () {
  2. $(".ckeditor").each(function () {
  3. var el = $(this)[0];
  4. var instance = CKEDITOR.instances[el.id];
  5. if (instance) { instance.destroy(true); }
  6.  
  7. CKEDITOR.replace(el, {
  8. filebrowserBrowseUrl: 'filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  9. filebrowserUploadUrl: 'filemanager/dialog.php?type=2&editor=ckeditor&fldr=',
  10. filebrowserImageBrowseUrl: 'filemanager/dialog.php?type=1&editor=ckeditor&fldr='
  11. });
  12. });
  13. });
trifek
działa, dziękuję smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.