2012-11-02 11 views
11

वहाँ दृष्टिकोण ईमेल के लिए एक निश्चित स्ट्रिंग आकार है। मैं है निम्नलिखित कोड है कि मुझे एक त्रुटि देता हैडेटा एक प्रणाली कॉल को दिया गया क्षेत्र बहुत छोटा है "

एक प्रणाली कॉल को दिया गया डेटा क्षेत्र है बहुत छोटा

हालांकि यह केवल तब होता है जब मेरे संदेश के मुख्य भाग बड़ा तो सामान्य

document.location.href = "mailto:" + emailAddress + "?subject=my msgs Relief&body=" + escape(message); 

मैं कोड को निकालने कर रहा हूँ तो यह इस संदेश को प्रदर्शित न होने के है लगता है। तो यह बताता है कि यह ईमेल निकाय में वर्णों की संख्या से संबंधित है। कृपया सुझाव दे।

+0

कोड, जहां 'message' – LuigiEdlCarno

+0

उत्पन्न होता है यह हो सकता है प्रदान करें, कि मानों आप अपने स्ट्रिंग के पीछे जोड़ने के किसी भी' null' है? – LuigiEdlCarno

+0

कृपया, पूर्ण एचटीएमएल और जेएस प्रदान करें। आप यहां अपना कोड पेस्ट कर सकते हैं: http://jsfiddle.net/ – maxwell

उत्तर

4

यह शायद विफल रहता है क्योंकि व्हाइटस्पेस href के एक भाग के रूप में कुछ ईमेल क्लाइंट द्वारा स्वीकार नहीं किया है, तो आप यूआरआई एनकोड (भागने) उन्हें करने की जरूरत है, ताकि वे 20% हो गया है।

इस प्रयास करें:

document.location.href = "mailto:" + emailAddress + "?subject=my%20msgs%20Relief&body=" + escape(message);

6

मैं हाल ही में इस सटीक समस्या बारे में जाना। मुद्दा यह है कि विभिन्न ब्राउज़रों (और विभिन्न ईमेल क्लाइंट) के पास मेल-टू-लिंक का उपयोग करके उनके बीच पारित किए जा सकने वाले डेटा की मात्रा पर सीमा होती है।

उदाहरण के लिए, इंटरनेट एक्सप्लोरर में अधिकतम URL लंबाई 2,083 वर्ण (MS KB Link) है। यदि विषय, पता, और शरीर सहित आपके लिंक की कुल लंबाई इस से अधिक है, तो आपको वास्तव में यह त्रुटि मिल जाएगी।

इसे ठीक करने के (जैसा कि हम आईई समर्थन करने के लिए किया है), मैं अपने लिंक पैदा करने के बाद इस kludge प्रयोग किया है:

var mailto_link = 'mailto:'+addresses+'?subject='+subject+'&body='+body_message; 
win = window.open(mailto_link.substr(0,2000),'emailWindow'); 

यह सही नहीं है, लेकिन दुर्लभ अवसरों पर उपयोगकर्ता एक विशाल अधिसूचना ईमेल उत्पन्न करने के लिए कोशिश करता है , उन्हें पहले विनम्रतापूर्वक चेतावनी दी जाती है, घटना के बाद याद दिलाया जाता है, और अधिसूचित किया जाता है।

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