2012-04-18 16 views
12

मैं एक रूपजावास्क्रिप्ट जोड़ने LINEBREAK mailto शरीर

firstname = bob 
    lastname = dole 

    ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname 

    window.location.href = 'mailto:[email protected]?subject=test 
    email&body=' + ebody; 

मानों का उपयोग करके ईमेल के मुख्य भाग सेट कर रहा हूं तो मैं एक है "चेतावनी (ebody);" मुझे प्रथम नाम & अंतिम नाम के बीच लाइनब्रेक मिलता है, हालांकि जब यह दृष्टिकोण खोलता है, तो संपूर्ण ईडी स्ट्रिंग ईमेल बॉडी में एक लाइनबैक के बिना दिखाई देता है।

मैंने कोशिश की है \ n भी। क्या ऐसा कुछ है जो ब्रेक दे सकता है?

अग्रिम धन्यवाद

+0

बस एक विचार है, तो आप की तरह '\\ r \\ n' बैकस्लैश से बचने की कोशिश की? – inhan

+1

क्या आपने अक्षर एन्कोड करने का प्रयास किया था? -> '% 0 डी% 0 ए' – GNi33

+2

क्या आपके ई-मेल के लिए एमआईएम प्रकार टेक्स्ट/सादा है? आउटलुक समृद्ध पाठ के रूप में व्याख्या करने की कोशिश कर रहा है। – g13n

उत्तर

32

RFC 2368 का कहना है कि मेलो बॉडी सामग्री को यूआरएल-एन्कोडेड होना चाहिए, जो कि अक्षर से% -स्केप किए गए फॉर्म का उपयोग करके सामान्य रूप से यूआरएल में एन्कोड किया जाएगा। उन पात्रों में रिक्त स्थान शामिल हैं और (जैसा कि स्पष्ट रूप से 2368 की धारा 5 में कहा जाता है) सीआर और एलएफ।

आप

ebody = 'First%20Name:%20' + firstname + '%0D%0A' + 'Last%20Name:%20' + lastname; 

लिख कर ऐसा कर सकता है, लेकिन यह जावास्क्रिप्ट आप के लिए भागने करते हैं, इस तरह के लिए आसान और बेहतर है:

ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname; 
ebody = encodeURIComponent(ebody); 

इतना ही नहीं होने से आप की बचत होगी अपने निश्चित पाठ में एन्कोड किए जाने वाले वर्णों के हेक्स मानों की पहचान करें और देखें, यह firstname और lastname चर में किसी भी गूढ़ वर्णों को एन्कोड करेगा।

+0

आपकी मार्गदर्शिका के लिए धन्यवाद यह ठीक है – srini

1

मैं दृष्टिकोण html/रिच टेक्स्ट के रूप में कोशिश करते हैं और उत्पादन इस ताकि मामले में आप (एक urlencoded br टैग सहित) निम्नलिखित की तरह कुछ की आवश्यकता होगी की उम्मीद करेंगे:

firstname = bob 
    lastname = dole 

    ebody = 'First Name: ' + firstname + '%3C%2Fbr%3E' + 'Last Name: ' + lastname 

    window.location.href = 'mailto:[email protected]?subject=test 
    email&body=' + ebody; 
+0

आपकी मार्गदर्शिका के लिए धन्यवाद यह ठीक है – srini

5

आप लाइन ब्रेक के लिए केवल एन्कोडिंग %0D%0A का उपयोग कर सकते हैं।

firstname = 'Aung '; 
lastname = 'Kyaw Zaw'; 

ebody = 'First Name: ' + firstname + '%0D%0A' + 'Last Name: ' + lastname; 

window.location.href = 'mailto:[email protected]?subject=testemail&body=' + ebody; 

http://www.w3schools.com/tags/ref_urlencode.asp

+0

आपकी मार्गदर्शिका के लिए धन्यवाद – srini

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