>  기사  >  웹 프론트엔드  >  js에서 이메일 보내기

js에서 이메일 보내기

高洛峰
高洛峰원래의
2016-12-17 12:42:191823검색

프로젝트에서 이메일을 보내야 하는 경우가 있어서 인터넷에서 아래와 같은 방법을 찾았습니다.

 1.

<a href="mailto:test@163.com;test1@163.com?CC=test@163.com&BCC=test@163.com&Subject=Hello&Body=你好">给我发邮件</a>

2.

<button type="button" id="email">发送邮件</button>
<script type="text/javascript">
    $(document).on("click", "#email", function () {
         document.location = "Mailto:me@home.com?subject=Feedback; 
//经过测试这个方法不成功
    });

</script>

3.

<form name="frmEmailOutLook" action="" method="post" enctype="text/plain"> 
  <input type="hidden" name="message" value=""> 
</form> 
<form name="frmEmail" action="" method="post"> 
姓名:<input type="text" name="name" value="a"><BR> 
电话:<input type="text" name="phone" value="b"><BR> 
网址:<input type="text" name="website" value="c"><BR> 
主题:<input type="text" name="subject" value="d"><BR> 
内容:<textarea name="message" >ee 
ddd</textarea><BR> 
<input type="button" name="send" value="send" onClick="toOutLook()"> 
</form>
<script language="javascript">... 
function toOutLook()...{ 
   var objFrm = document.frmEmail; 
    var objFrmOutLook = document.frmEmailOutLook; 
    var msg = ""; 
    msg += "姓名: " + objFrm.name.value + "  "; 
    msg += "电话: " + objFrm.phone.value + "  "; 
    msg += "网址: " + objFrm.website.value + "  "; 
    msg += "主题: " + objFrm.subject.value + "  "; 
    msg += "内容: " + objFrm.message.value + "  "; 
    objFrmOutLook.message.value = msg; 
    objFrmOutLook.action = "mailto:sundysea@hotmail.com?subject=" + objFrm.subject.value; 
    objFrmOutLook.submit(); 
} 
</script>

그러나 이 방법에는 몇 가지 문제점이 있습니다. 1. 이메일 본문은 type=hideen 값이고 표시되는 메시지는= .... ., message는 type=hideen의 이름입니다. name="message"를

name="Content"로 바꾸면 본문에 표시되는 내용이 Content=...가 됩니다. .. ..

2. 내용을 한자로 작성하면 아웃룩에 표시될 때 깨져서 나옵니다

마지막으로 이 코드를 개선해서 양식 없이 메일을 보냈습니다.

<div class="commonemail_Wrap">
       <!-- <form  name="frmEmailOutLook" action="" method="post" enctype="text/plain">
            <input type="hidden" name="message" value=""/>
        </form>-->
        <!--<form name="frmEmail" action="" method="post">
            <div><label>收件人</label><input type="text" name="website"  /></div>
            <div><label>主题</label><input type="text"  name="subject"/></div>
            <div><label class="unique">内容</label><textarea  rows="4"   name="message"></textarea></div>
            <input type="button" name="send" value="发送邮件" id="SendEmai"/>
        </form>-->
        <div>
            <div><label>收件人</label><input type="text" name="website" id="test1" /></div>
            <div><label>主题</label><input type="text"  id="test2" name="subject"/></div>
            <div><label class="unique">内容</label><textarea  rows="4"   id="test3" name="message"></textarea></div>
            <!--<input type="button" name="send" value="发送邮件" id="SendEmail"/>-->
            <a href="" id="SendEmail">发送邮件</a>
        </div>
    </div>
<script type="text/javascript">
        $(document).on("click", "#SendEmail", function () {

            var website = document.getElementById("test1").value;
            var subject = document.getElementById("test2").value;
            var body = document.getElementById("test3").value;
            var url = "mailto:" + website + "?subject=" + subject + "&body=" + body;
            document.getElementById("SendEmai").setAttribute("href", url);
         //return fasle;
        });
</script>

그러나 세 번째 방법의 두 가지 방법에는 몇 가지 차이점이 있습니다. 양식을 사용하여 이메일을 보내는 경우 Outlook에 고정된 템플릿이 표시되지 않고 양식을 사용하여 보내는 것입니다. a 이메일을 보낼 때 그런 템플릿이 나타납니다



js 이메일 보내기에 관련된 더 많은 기사를 보려면 PHP 중국어를 참고하세요. 웹사이트!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.