2013-01-18 6 views
10

का उपयोग कर TinyMCE textarea और पोस्ट फॉर्म मैं AJAX के माध्यम से textareas और POSTING फ़ॉर्म के लिए tinyMCE का उपयोग कर रहा हूं।एजेक्स

लेकिन जब मैं टेक्स्टरेरा मान को सहेजने की कोशिश कर रहा हूं, तो यह पहले क्लिक पर पुराने मान ले रहा है, लेकिन यह दूसरे क्लिक पर अपडेट किए गए मान लेता है।

मैंने tinyMCE.triggerSave() का उपयोग करने का प्रयास किया है लेकिन यह काम नहीं करता है।

मैंने tinyMCE.get ('myid') भी कोशिश की है। GetContent(), अभी भी पुराने मान लेते हैं।

मेरा कोड निम्नानुसार है।

$(".submit").live("click", function() { 
      tinyMCE.triggerSave(); 
      var f = $(this).parents("form"); 
      var action = f.attr("action"); 
      var serializedForm = f.serialize(); 
      //tinyMCE.triggerSave(); also tried putting here 
      $.ajax({ 
       type: 'POST', 
       url: action, 
       data: serializedForm, 
       async: false, 
       success: function (data, textStatus, request) { 
        $(".divform").html(data); 
       }, 
       error: function (req, status, error) { 
        alert&("Error occurred!"); 
       } 
      }); 
    return false; 
    }); 

कृपया मदद, किसी भी मदद की सराहना की जाएगी

उत्तर

9

उपयोग इस के बजाय tinymce.triggerSave();

$('#' + 'your_editor_id').html(tinymce.get('your_editor_id').getContent()); 
+2

धन्यवाद लेकिन मैंने tinyMCE.activeEditor.getContent() का उपयोग किया और यह काम किया। आपके उत्तर के लिए धन्यवाद। –

+0

बेशक यह करता है: tinyMCE.activeEditor एक ही संपादक उदाहरण है जिसे आप tinymce.activeEditor का उपयोग करते हैं। लेकिन ध्यान रखें कि tinymce.activeEditor केवल तब सेट हो जाता है जब उपयोगकर्ता संपादक में क्लिक करता है और यह tinymce.get ('your_editor_id') हमेशा आपको एक संपादक उदाहरण – Thariama

+0

सुझाव के लिए धन्यवाद देता है, यह अनिर्धारित है। –

33

आप TinyMCE कॉन्फ़िगर कर सकते हैं के रूप में सिंक में छिपा textareas के मूल्यों रखने के लिए इस प्रकार परिवर्तन किए जाएंगे TinyMCE संपादकों के माध्यम से:

tinymce.init({ 
    selector: "textarea", 
    setup: function (editor) { 
     editor.on('change', function() { 
      tinymce.triggerSave(); 
     }); 
    } 
}); 

इस जगह के साथ, आप सी किसी भी समय टेक्स्टरेरा तत्वों से सीधे अप-टू-डेट मानों तक पहुंच।

यह TinyMCE पर परीक्षण किया गया 4.0

डेमो पर चल: http://jsfiddle.net/9euk9/

+0

दुर्भाग्य से, यह मेरे लिए TinyMCE 3.x – Pere

+0

@Pere पर काम नहीं करता है - मैंने एक वैकल्पिक उत्तर पोस्ट किया है जो TinyMCE 3.x – HappyDog

+0

पर काम करता है यह ध्यान देने योग्य है कि 'editor.triggerSave'() '' init' पर भी इनलाइन संपादकों के लिए उपयोगी हो सकता है क्योंकि संबंधित छिपे हुए फ़ील्ड के पास लोड पर कोई मूल्य नहीं होगा – Zach

0

एक TinyMCE 3.x के लिए, दान मैल्कम द्वारा पोस्ट की गई, के लिए एक वैकल्पिक कार्यान्वयन के रूप में किया जाएगा इस प्रकार है:

tinymce.init({ 
    selector: "textarea", 
    setup: function (editor) { 
     editor.onChange.add(function() { 
      editor.save(); 
     }); 
    } 
}); 

साथ ही 3.x पर काम करने के साथ, यह संस्करण के बजाय editor.save का उपयोग करता है, जिसका अर्थ है कि यह पृष्ठ के सभी संपादकों की बजाय वर्तमान संपादक को अपडेट करता है।

संबंधित मुद्दे