不要HTML标记是么?
document.body.childNodes
或者
其他类似的方法得到一级一级的元素Element
然后把Element的.innerText属性取出来就是文字了.
不过这样是没有样式效果你自己也不好摘分.拼出来的东西也比较杂乱.注意:最好不要用ALL,因为ALL出来的东西可能顺序都错乱了.
再就是document.body.childNodes要一级一级的循环递归下去.
一个一个的取

解决方案 »

  1.   

    楼主想用什么来打开HTML呢?
    是用封好的HTML类库?
    还是自己写正则往外扣呢?
      

  2.   

    邮件正文可以支持HTML格式,你设置邮件正文为HTML格式就可以了。不过我不知道,如何读取到mht文件中的html代码
      

  3.   

    呵呵,楼主!
    简单的做法是写一个txt文本文件读进去!
    记住只写body节点里的内容就行了,这样是为了方便不用去处理字符串
    然后以HTML的形式发送就行了!string tempPath = "html.txt";
    Encoding code = Encoding.GetEncoding("gb2312");
                StreamReader sr = null;
                StreamWriter sw = null;
                string str = "";
                try
                {
                    sr = new StreamReader(tempPath, code);
                    str = sr.ReadToEnd(); // 读取文件
                }
                catch (Exception exp)
                {
                    HttpContext.Current.Response.Write(exp.Message);
                    HttpContext.Current.Response.End();
                    srNum++;
                }
                finally
                {
                    sr.Close();
                }
                if (srNum != 0)
                {
                    sw.Close();
                    return false;  //读文件出错
                }jmail.Message JMail = new jmail.Message();
            JMail.Silent = true;
            JMail.Charset = "gb2312";
            JMail.FromName = fromname;
            JMail.From = frommail;
            JMail.AddRecipient(tomail, toname, "");
            JMail.Subject = mailtitle;        JMail.HTMLBody = str; //把读取到的内容写到HTMLBody里发送就可以了
            JMail.MailServerUserName = mailserverloginname;
            JMail.MailServerPassWord = mailserverloginpass;
            bool sendok = JMail.Send(mailserver, false);
            JMail.Close();
      

  4.   

    我用的是.net2003,没有JMail.HTMLBody = str; 这个属性