2009-04-06 13 views
5

मैं एक सुविधा के साथ एक परियोजना पर काम कर रहा हूं ताकि जब मैं एक बटन पर क्लिक करता हूं, तो Outlook खुल जाएगा और एक चर में संग्रहीत संबंधित मान मेल के शरीर में होगा। मैं निम्नलिखित कोड की कोशिश की है:एचटीएमएल सामग्री के साथ एक ईमेल पूर्ववत करें

<html> 
<head> 
    <title>Email This Code Snippet</title> 
    <script language="javascript"> 
    function TriggerOutlook() 
    {   
     var sub = "Hi friend"; 
     var bodycont = "<html><body>welcome</body></html>"; 
     var body = escape(bodycont + String.fromCharCode(13));   
     window.location.href = "mailto:[email protected]" 
          + "?body=" + body 
          + "&subject=" + sub 
     ;     
    }  
</script> 
</head> 
<body> 
<form id="form1"> 
    <a href="#" onclick="TriggerOutlook()">Email this Codesnippet</a> 
    <input type="text" name="txtbody" id="txtbody"> 
</form> 
</body> 
</html> 

लेकिन मेल के शरीर सादा पाठ, नहीं HTML में <html><body>welcome</body></html> है। मैं इसे HTML के रूप में स्वरूपित कैसे करूं?

उत्तर

5

आप नहीं कर सकते। mailto specification पर ब्राउज़र द्वारा लगाए गए ई-मेल क्लाइंट पर उस तरह का नियंत्रण नहीं है।

+0

+1: यह सब Outlook, या किसी अन्य मेल क्लाइंट में डिफ़ॉल्ट सेटिंग पर निर्भर करता है। यदि उपयोगकर्ता ने डिफ़ॉल्ट रूप से HTML में संदेशों को लिखने के लिए ऐप सेट किया है, तो शायद यह दिखाई देगा। अन्यथा, सादा पाठ। दोबारा ... उपयोगकर्ता मेलो लाइन नहीं, फैसला करता है। –

+0

+1। 'Body =' केवल सादा पाठ के लिए अविश्वसनीय है जैसा कि यह है। विश्वसनीय और लचीली मेल भेजने के लिए, सर्वर-साइड स्क्रिप्ट का उपयोग करें। – bobince

1

दिलचस्प बात यह है कि आपका कोड मेरे लिए काम करता है-जब थंडरबर्ड डिफ़ॉल्ट सिस्टम मेलर होता है। स्पष्ट रूप से थंडरबर्ड यह ध्यान देने योग्य है कि शरीर <html> से शुरू होता है और HTML-मेल मोड में स्विच करता है।

ऐसा लगता है कि Outlook को समान रूप से व्यवहार करने के लिए मनाने के लिए, आप "टेक्स्ट/एचटीएमएल" में ईमेल में Content-Type शीर्षलेख सेट करने का प्रयास कर सकते हैं। हालांकि, मुझे नहीं पता कि यह मेलो का उपयोग करके कैसे संभव है क्योंकि आपके पास हेडर पर नियंत्रण नहीं है।

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