Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript][HTML][Jquery]Jquery Tinymce
arpi
post 10.12.2023, 19:04:12
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 7.01.2011

Ostrzeżenie: (10%)
X----


Cześć, borykam sie nad tematem kilka godzin, przeszukałem wszysktie fora i google i nie znalazłem rozwiązania.
Otóż mam problem aby za pomocą Jquery dostać się do pola textarea, które jest obsadzone Tinymce.
Tinymce tworzy dodatkowa ramke IFrame w kodzie i Jquery coś nie może się dostać do drzewa DOM w ramce.

kod:
  1. <script src="includes/jquery-3.7.1.js"></script>
  2. <script src="https://cdn.tiny.cloud/1/XXXXXXXXXXXX/tinymce/6/tinymce.min.js" referrerpolicy="origin"></script>
  3. <script src="https://cdn.jsdelivr.net/npm/@tinymce/tinymce-jquery@1/dist/tinymce-jquery.min.js" crossorigin="anonymous"></script>
  4. tinymce.init({
  5. selector: 'textarea.tiny', // change this value according to the HTML
  6. height:200,
  7. plugins: ['lists', 'code' ],
  8. toolbar: 'undo bold bullist code',
  9. menubar: false,
  10. invalid_elements: 'div,span,p,table',
  11. setup: function (e) {
  12. e.on('change', function () {
  13. tinymce.triggerSave();
  14. })
  15. }
  16. });
  17.  
  18. $('.mce-content-body').on("change",function (e) { //.mce-content-body to jest pole które wstawia tinymce a textarea wyłącza wyswietlanie
  19. var value = $(this).val();
  20. alert(value);
  21. });
  22. </script>
  23. ....
  24. <textarea class="tiny" id="opis" name="opis">OPISopisOPIS</textarea>
  25. <input type="button" id="zapisz" name="zapisz" value="Zapisz">
  26. </form>


Co należy dopisać w kodzie aby kod jQuery widział te pola w ramce i mógł pobrać ich wartość?
Oczywiście gdy wyłączę Tinymce, z textarea mogę normalnie wyciągnąć wartość

Go to the top of the page
+Quote Post
trueblue
post 10.12.2023, 19:18:36
Post #2





Grupa: Zarejestrowani
Postów: 6 762
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A w jaki celu chcesz się dostać do pola textarea?


--------------------
Go to the top of the page
+Quote Post
arpi
post 14.12.2023, 19:12:13
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 7.01.2011

Ostrzeżenie: (10%)
X----



Gdy użytkownik zmieni opis w textarea potrzebuje pobrać wartość z tego pola $('.mce-content-body') i za pomocą ajaxa zapisać w bazie mysql.
Go to the top of the page
+Quote Post
Salvation
post 15.12.2023, 15:45:35
Post #4





Grupa: Zarejestrowani
Postów: 355
Pomógł: 70
Dołączył: 15.07.2014

Ostrzeżenie: (0%)
-----


Wszystko jest w dokumentacji: https://www.tiny.cloud/blog/how-to-get-cont...ent-in-tinymce/
Go to the top of the page
+Quote Post
arpi
post 16.12.2023, 18:17:37
Post #5





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 7.01.2011

Ostrzeżenie: (10%)
X----


Dziękuję, zrobione działa smile.gif
Wrzucam kod dla szukających rozwiązania - bo te instrukcje na stronach twórców to ciężko znaleźć

  1. <script src="includes/jquery-3.7.1.js"></script>
  2. <script src="https://cdn.tiny.cloud/1/XXXXXXXXXXXX/tinymce/6/tinymce.min.js" referrerpolicy="origin"></script>
  3. <script src="https://cdn.jsdelivr.net/npm/@tinymce/tinymce-jquery@1/dist/tinymce-jquery.min.js" crossorigin="anonymous"></script>
  4. tinymce.init({
  5. selector: 'textarea.tiny', // change this value according to the HTML
  6. height:200,
  7. plugins: ['lists', 'code' ],
  8. toolbar: 'undo bold bullist code',
  9. menubar: false,
  10. invalid_elements: 'div,span,p,table'
  11. });
  12.  
  13. $('input#zapisz').click(function() {
  14. var Tresc = tinymce.get("opis").getContent();
  15. alert(Tresc);
  16. });
  17. </script>
  18. ....
  19. <textarea class="tiny" id="opis" name="opis">OPISopisOPIS</textarea>
  20. <input type="button" id="zapisz" name="zapisz" value="Zapisz">
  21. </form>
  22.  
  23.  
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.05.2024 - 08:56