zoukankan      html  css  js  c++  java
  • 电子邮件写信页面开发代码

    页面代码

    <!DOCTYPE>
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8;application/xml">
            <title>sendMessage</title>
            <script type="text/javascript">
            function addScript(){
                var script = document.createElement('script');
                script.type = 'text/javascript';
                script.src = '../js/packAll.js'
                document.head.appendChild(script);
            }
            </script>
            
        </head>
        <body onload = 'addScript()'>
                <label for = 'sendAddress'>收件人:</label>
                <input type = 'text' name = 'sendAddress' id = 'sendAddress' size = '100'>
                <br>
                <label for = 'emailSubject'>&nbsp;&nbsp;题:</label>
                <input type = 'text' name = 'emailSubject' id = 'emailSubject' size = '100'>
                <br>
                <label for = 'emailContent'>&nbsp;&nbsp;文:</label>
                <textarea style= 'vertical-align: top;' name = 'emailContent' id = 'emailContent' rows = '40' cols = '90' value = '123456'></textarea>
                <br>
                <input type = 'button' id = 'send' value = '发送'>
                
            
        </body>
    </html>

    js代码

      1     /**
      2             *创建一个Ajax的XHR对象
      3             *@throw 返回一个XHR对象
      4             */
      5              function createXHR() {
      6 
      7                 if (typeof XMLHttpRequest !== "undefined") {
      8                     return new XMLHttpRequest();
      9                 } else if (typeof ActiveXObject !== "undefined") {
     10 
     11                     if (typeof arguments.callee.activeXString !== "string") {
     12                         var versions = ["MSXML2.XMLHttp.6.0", "MSXML2.XMLHttp.3.0",
     13                                         "MSXML2.XMLHttp"];
     14                         var i = 0; 
     15                         var len = versions.length;
     16                 
     17                         for (; i < len; i++) {
     18 
     19                             try {
     20                                 new ActiveXObject(versions[i]);
     21                                 arguments.callee.activeXString = versions[i];
     22                                 break;
     23                             } catch (ex){
     24                                 //skip
     25                             }
     26                         }
     27                     }
     28                 
     29                     return new ActiveXObject(arguments.callee.activeXString);
     30                 } else {
     31                     throw new Error("No XHR object available.");
     32                 }
     33             }
     34                /*
     35                *将json格式的对象转化成xml
     36                */
     37             function obj2Xml(obj) {
     38                 
     39                 if (typeof obj !== 'object') {                    
     40                     return ;                
     41                 };
     42                 var result = [];
     43 
     44                 for (var i in obj) {
     45 
     46                     var item = obj[i];
     47                     if (typeof item === 'object') {
     48                         var objStr = arguments.callee(item);
     49                         objStr = '<object name="'+i+'">' + objStr + '</object>'
     50                         result.push(objStr);
     51                     } else {
     52                         var type = typeof item;
     53 
     54                         if (type ==='number') { 
     55                             type = 'int';
     56                         };
     57                         var str = '<'+type+' name="'+i+'">'+item+'</'+type+'>';
     58                         result.push(str);
     59                     }
     60                 }
     61 
     62                 return result.join("
    ");
     63             }
     64 
     65 
     66             /**
     67             *跨浏览器监听事件
     68             */
     69             function addHandler(element, type, handler){
     70                 
     71                 if (element.addEventListener){
     72                     element.addEventListener(type, handler, false);
     73                 } else if (element.attachEvent){
     74                     element.attachEvent("on" + type, handler);
     75                 } else {
     76                     element["on" + type] = handler;
     77                 }
     78             }
     79 
     80             function $(selector) {
     81                 return document.getElementById(selector)
     82             }
     83 
     84             var send = $('send');
     85             addHandler(send,'click',function(){
     86                  var sendAddress = $('sendAddress').value;
     87                  var emailSubject = $('emailSubject').value;
     88                  var emailContent = $('emailContent').value;
     89                  var href = location.href;
     90                  var sidIndex = href.indexOf('sid');
     91                  var sid = href.match(/sid=[^&#]+/)[0];
     92                  var rand = Math.floor(Math.random()*1e+14);
     93                  var URL = 'http://appmail.mail.10086.cn/RmWeb/mail?func=mbox:compose&categroyId=103000000&'+sid+'&&comefrom=54&guid='+rand+'&cguid=1614225212258 ';
     94 
     95                 //构建一个邮件对象
     96                 var attrs = {
     97                             account: 'zhangxu0413@139.com', 
     98                             to: sendAddress + '',  
     99                             subject: emailSubject + '', 
    100                             content: emailContent + '', 
    101                             priority: 3,
    102                             signatureId: 0, 
    103                             saveSentCopy: 1, 
    104                             requestReadReceipt: 0, 
    105                             inlineResources: 1,
    106                             scheduleDate: 0, 
    107                             normalizeRfc822: 0
    108                         };    
    109                 var email = {attrs:attrs, action:'deliver', replyNotify:0, returnInfo:1}
    110 
    111                 //将email转化成xml
    112                 var emailXml = '<object>'+obj2Xml(email)+'</object>';
    113                 var sendXhr = createXHR();
    114 
    115                 sendXhr.onreadystatechange = function(){
    116 
    117                     if (sendXhr.readyState === 4) {
    118                         if ((sendXhr.status >= 200 && sendXhr.status < 300) || sendXhr.status == 304) {
    119                                 alert('发送成功');
    120                             } else {
    121                                 alert('发送失败');
    122                             }
    123                         };
    124                 }
    125                 sendXhr.open("POST",URL,true);
    126                 sendXhr.send(emailXml);
    127 
    128                
    129             });
  • 相关阅读:
    Dex-Net笔记
    python笔记
    linux和anaconda
    JPA和Hibernate的关系
    eclipse利用JPA,根据数据库表生成Java中的实体类
    eclipse中利用hibernate插件,根据数据库表反向生成Javabean
    eclipse中git常用操作说明
    oracle常用语法
    threadlocal
    spring用到的一些注解小札
  • 原文地址:https://www.cnblogs.com/shuyuxuan/p/3867355.html
Copyright © 2011-2022 走看看