您的位置:首页 > Web前端 > JavaScript

javascript mailto outlook 乱码的解决办法

2008-03-21 17:46 351 查看
这个问题,困扰了我一天。又是转码又是更改outlook的编码都是无功而返。现在终于解决了。贡献出来,希望能给以后遇到同样问题的人一点帮助。

最初:
function sendMail(i)
    {
        var title = document.getElementById("id_title"+i+"").innerHTML ;
        var content= document.getElementById("id_content"+i+"").innerHTML;
        title = title.replace(new RegExp("<BR>","gm"),"%0d%0a");//same to replaceAll()
        content= content.replace(new RegExp("<BR>","gm"),"%0d%0a");
        var mail = document.getElementById("id_mail").value;
        var mailBody=
            "以下の記事に対するコメントメールです.%0d%0a"+
            "--------------------------------------------%0d%0a"+
            "【タイトル】%0d%0a"+
            title+
            "【記事内容】%0d%0a"+
            content+"%0d%0a"+
            "--------------------------------------------%0d%0a";
        var url = "mailto:"+mail+"?subject="+"新着情報「これはタイトルAです。」へのコメント"+"&body="+mailBody;
        document.write(url);
        window.navigate(url);
        //window.location.href=url;
    }
工程的编码格式都是utf-8的。系统是日文的。结果总是出现乱码。
更改后的:
function sendMail(i)
    {       
        var outlookApp = new ActiveXObject("Outlook.Application");
        var nameSpace = outlookApp.getNameSpace("MAPI");
        var mailItem = outlookApp.CreateItem(0);
       
        var title = document.getElementById("id_title"+i+"").innerHTML ;
        var content= document.getElementById("id_content"+i+"").innerHTML;
        var mail = document.getElementById("id_mail").value;
           var mailBody=
            "以下の記事に対するコメントメールです.<br>"+
            "--------------------------------------------<br>"+
            "【タイトル】<br>"+
            title+"<br>"+
            "【記事内容】<br>"+
            content+"<br>"+
            "--------------------------------------------" ;
        with(mailItem)
        {
            Subject="新着情報「これはタイトルAです。」へのコメント";
            To =mail;
             HTMLBody = mailBody;
            Display(0);
         }
        mailItem=null;
        nameSpace=null;
        outlookApp=null;   
    }
问题解决了。至于原因,我确实不是很清楚,对象的好处吧。谁知道解释一下,我也很想知道。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  javascript function url null