Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Formularz ładowany z ajax nie zaczytuje tinymce
amii
post 7.09.2012, 12:37:44
Post #1





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


J/W czytałem w necie ale nic nie działa. Wygląda to tak, że mam jeden centrallny plik js, który wyglada tak:
Formularz jest podczepiony do zdarzenia change i zaczytywany jako data z php, chodzi mi o to aby zaczytywał się z tinymce

[JAVASCRIPT] pobierz, plaintext
  1. function ajaxSuccess(data){
  2. //alert(data);
  3. $('#formularz_select').children().remove();
  4. $('#formularz_connect').remove();
  5. $('#formularz_select').append(data);
  6. }
  7.  
  8. function ajax_check() {
  9. $.ajax({
  10. type: 'POST',
  11. url: ajaxUrl,
  12. data: this.name + '=' + this.value + '&id=' + getParameterByName(window.location.href),
  13. success: ajaxSuccess,
  14. context: this
  15. });
  16. }
  17.  
  18. //this for tiny_mce lightweight jquery version
  19. function loader() {
  20. $('textarea').tinymce({
  21. // Location of TinyMCE script
  22. script_url : 'js/tiny_mce/tiny_mce.js',
  23.  
  24. // General options
  25. theme : "advanced",
  26. plugins : "autolink,lists,pagebreak,style,layer,table,save,advhr,advimage,advlink,emot
    ions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contex
    tmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxt
    ras,template,advlist"
    ,
  27.  
  28. // Theme options
  29. theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justif
    ycenter,justifyright,justifyfull,styleselect,formatselect,fontselect,fontsizesele
    ct"
    ,
  30. theme_advanced_buttons2 : "cut,copy,paste,pastetext,pasteword,|,search,replace,|,bullist,numlist,|,out
    dent,indent,blockquote,|,undo,redo,|,link,unlink,anchor,image,cleanup,help,code,|
    ,insertdate,inserttime,preview,|,forecolor,backcolor"
    ,
  31. theme_advanced_buttons3 : "tablecontrols,|,hr,removeformat,visualaid,|,sub,sup,|,charmap,emotions,iesp
    ell,media,advhr,|,print,|,ltr,rtl,|,fullscreen"
    ,
  32. theme_advanced_buttons4 : "insertlayer,moveforward,movebackward,absolute,|,styleprops,|,cite,abbr,acro
    nym,del,ins,attribs,|,visualchars,nonbreaking,template,pagebreak"
    ,
  33. theme_advanced_toolbar_location : "top",
  34. theme_advanced_toolbar_align : "left",
  35. theme_advanced_statusbar_location : "bottom",
  36. theme_advanced_resizing : true,
  37.  
  38. // Example content CSS (should be your site CSS)
  39. content_css : "http://elearning.edukey.pl/css/learning.css",
  40.  
  41. // Drop lists for link/image/media/template dialogs
  42. template_external_list_url : "lists/template_list.js",
  43. external_link_list_url : "lists/link_list.js",
  44. external_image_list_url : "lists/image_list.js",
  45. media_external_list_url : "lists/media_list.js",
  46.  
  47. // Replace values for the template plugin
  48. template_replace_values : {
  49. username : "Some User",
  50. staffid : "991234"
  51. }
  52. });
  53. }
  54.  
  55. //Simple event handler for jQuery
  56. $(document).ready(
  57. function bind() {
  58. $('legend a.clicker').click(toggle_div);
  59. $('#type').change(ajax_check);
  60. loader();
  61.  
  62. }
  63. );
[JAVASCRIPT] pobierz, plaintext


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post
nospor
post 7.09.2012, 12:42:23
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No ale loader() wypdałoby odpalać po załadowaniu formularza a nie przed.... Weź poprawkę na to, że ajax jest asynchroniczny.
Czyli loader masz odpalić na końcu funkcji ajaxSuccess()


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
amii
post 8.09.2012, 12:35:13
Post #3





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


nospor chodzi o to żeby odpalać loader() w ajaxSuccess tak jak pod sspodem ? Jeśli tak to próbowałem i nie działa. loader() jest odpalany w document.ready po to żeby załadować tinymce normalnie

function ajaxSuccess(data){
//..kod
loader();
}

Może komuś się przyda rowzwiązanie. Ja korzystam z TinyMCE + jQuery w aplikacji na Zend Framework

1. TinyMCE globalnie uaktywniamy nie dla wszystkich textarea tylko dla tych z określoną klasą /id w ten sposób: $('textarea#description').tinymce({ //kod });
2. W pliku na serwerze, którego wywołujemy ajaxem zmienamy id dla textarea na zendzie robię to tak:
  1. $form = new Application_Form_Addexercise();
  2. $form->getElement('description')->setAttrib('id', 'description_ajax');

3. W funkcji obsługującej dane zwrócone z serwera wywołujemy na samym końcu kiedy formularz będzie już dodoany do DOM ponownie : $('textarea#description_ajax').tinymce({ //kod }); i cieszymy się TinyMCE hulającym na ajaxie smile.gif

nospor daje zasłużonego plusa bo twoja odpowiedź naprowadziła mnie na to rozwiązanie

Ten post edytował amii 8.09.2012, 12:36:20


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
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: 25.07.2025 - 08:00