2009-03-05 15 views
9

में सामग्री को प्रतिबिंबित नहीं करेगा, मैंने साइट पर सभी सामग्री प्रकारों में WYMeditor को तैनात करना शुरू किया है, और यह अच्छा दिख रहा है। अब मुझे यह देखना है कि यह कैसे काम करता है और देखता है, लेकिन यह कुछ भी सबमिट नहीं करता है और मुझे नहीं पता कि क्यों।WYMeditor Textarea value

मैंने इसे कई कोणों से देखा है। मैं इस बिंदु पर एक बंदरगाह भी ले जाऊंगा, अगर मैं सीख सकता हूं कि डेटा को कैसे पकड़ना है, तो मैं उसे जमा करने के समय मैदान में चिपका सकता हूं। वह या असली कारण यह अपने आप से काम नहीं कर रहा होगा। कोई विचार के साथ कोई भी?

<li><label for="id_comment">comment on this article:</label> <textarea id="id_comment" rows="10" cols="40" name="comment"></textarea> 
<script type="text/javascript"> 
    $(document).ready(function(){ 

    jQuery("#id_comment").wymeditor({ 
     "toolsItems":[ 
     { 
      "name":"Bold", 
      "css":"wym_tools_strong", 
      "title":"Strong" 
     }, 
     { 
      "name":"Italic", 
      "css":"wym_tools_emphasis", 
      "title":"Emphasis" 
     }, 
     { 
      "name":"InsertOrderedList", 
      "css":"wym_tools_ordered_list", 
      "title":"Ordered_List" 
     }, 
     { 
      "name":"InsertUnorderedList", 
      "css":"wym_tools_unordered_list", 
      "title":"Unordered_List" 
     }, 
     { 
      "name":"Indent", 
      "css":"wym_tools_indent", 
      "title":"Indent" 
     }, 
     { 
      "name":"Outdent", 
      "css":"wym_tools_outdent", 
      "title":"Outdent" 
     }, 
     { 
      "name":"Undo", 
      "css":"wym_tools_undo", 
      "title":"Undo" 
     }, 
     { 
      "name":"Redo", 
      "css":"wym_tools_redo", 
      "title":"Redo" 
     }, 
     { 
      "name":"CreateLink", 
      "css":"wym_tools_link", 
      "title":"Link" 
     }, 
     { 
      "name":"Unlink", 
      "css":"wym_tools_unlink", 
      "title":"Unlink" 
     }, 
     { 
      "name":"Paste", 
      "css":"wym_tools_paste", 
      "title":"Paste_From_Word" 
     } 
     ], 
     "logoHtml":"", 
     "updateEvent":"blur", 
     "stylesheet":"/static/yui/tiny_mce.css", 
     "skin":"twopanels", 
     "classesHtml":"", 
     "updateSelector":"textarea" 
     }); 

    }); 
</script></li> 

उत्तर

12

मैं एक ही समस्या थी, और अपनी साइट से प्रदान की wymexamples निर्देशिका कि Wymeditor विशेष एलीमेंट क्लास (सीएसएस वर्ग) का उपयोग करता है में उदाहरण 1 में देखने से देखा पृष्ठ के भाग जो अतिरिक्त राशि की जरूरत है इंगित करने के लिए व्यवहार उन्हें जोड़ा गया।

विशेष रूप से, सबमिट बटन में wymupdate का एक वर्ग होता है, और मुझे लगता है कि यह प्री-सबमिट हैंडलर को नियंत्रण से जुड़े होने का कारण बनता है।

एक बार जब मैं अपने स्रोत में सबमिट बटन पर wymupdate क्लास जोड़ता हूं, तो सबमिशन होने से पहले टेक्स्टरेरा फ़ील्ड HTML से भर दिया गया था और यह सही POST चर में सर्वर-साइड दिखाया गया था।

मैं उदाहरण स्रोत है जो यह काम कर से प्रासंगिक बिट नीचे में शामिल हैं ...

<script type="text/javascript"> 
jQuery(function() { 
    jQuery('.wymeditor').wymeditor(); 
}); 
</script> 

...

<form method="post" action=""> 
<textarea class="wymeditor">&lt;p&gt;Hello, World!&lt;/p&gt;</textarea> 
<input type="submit" class="wymupdate" /> 
</form> 

... wymupdate वर्ग संघ automagic प्रतीत हो रहा है, हालांकि , wymeditor क्लास एसोसिएशन को <script> में दिखाए गए अनुसार स्पष्ट रूप से ट्रिगर किया गया है, और उसके बाद इसे कक्षा wymupdate की चीजों को देखने का कारण बनना चाहिए।

+0

दुर्भाग्य से यह समस्या नहीं है जो मैं कर रहा था। जब मैं सबमिट करता हूं (यह करता है) मूल सामग्री प्राप्त करने का मूल मुद्दा नहीं था, लेकिन जब मैं एचटीएमएल-संपादन मोड को सक्षम करता हूं, जो तब कच्चे-एचटीएमएल टेक्स्टरेरा और वाई वाईएमडिटर के समृद्ध टेक्स्ट संपादन क्षेत्र दोनों को दिखाता है, तो एक संपादन दूसरे को नहीं बदलता है। – ironfroggy

+0

यह सही है, WYMeditor wymupdate कक्षा के बिना textarea में परिवर्तन को प्रतिबिंबित नहीं करता है। –

4
इसके बजाय इस बात का

:

"updateEvent":"blur", 
"updateSelector":"textarea" 

आप की जरूरत:

"updateEvent":"click",  
"updateSelector":"[type=submit]" 
+2

यह सही है। मैंने इसे 'अपडेट सिलेक्टर:' फॉर्म 'और' अपडेटएवेंट: 'सबमिट' के साथ और भी सामान्य बना दिया। काम करने लगता है। – Grocery

0

तुम भी सभी wymeditors, जो मैं वास्तविक से पहले क्या करने की जरूरत है अद्यतन मजबूर प्रस्तुत कर सकते हैं, क्योंकि मुझे लगता है कि चालाकी से कस्टम कार्यक्षमता था textarea सामग्री।

document.addEventListener('submit',function(e){ 
    e.preventDefault(); 
    //update all the wymeditors 
    var i=0,wym = jQuery.wymeditors(i); 
    while(wym){ 
     i++; 
     wym._element.html(wym.xhtml()); 
     //wym.update();//would use this, but it is not reliable 
     wym = jQuery.wymeditors(i); 
    } 
    e.target.submit(); 
});