2012-07-24 139 views
0

可能重複:
Need to Send Email from HTML pages發送電子郵件,但只有HTML和/或JavaScript的形式?

是否有使用一種形式,沒有數據庫發送電子郵件的方式?有沒有可以做到這一點的HTML元素?

+0

你說沒有DB,你是否也意味着沒有服務器端代碼? – Doon 2012-07-24 01:25:49

+0

您需要電子郵件服務才能發送電子郵件。很可能有一個API可用於此。但它會使用他人的服務 - 比如通過Ajax發送數據給另一臺服務器來發送電子郵件。 – 2012-07-24 01:28:56

+0

不,您不能在任何服務器端程序中使用任何服務器端程序,例如PHP,Java,ASP,您無法發送郵件。而且是的,因爲您不需要任何數據庫來發送郵件。 – Asif 2012-07-24 01:30:50

回答

3

你可以使用一個電子郵件鏈接:

<a href="mailto:[email protected]">Person</a> 

編輯:如果你真的想用一個表格,你可以利用mailto參數,如主題,正文毫升,和密件抄送定製你的電子郵件這裏有一個例子:

// JS 
 
// Uses jQuery but could be done without 
 
$(function() { 
 
    $('div').click(function() { 
 
     var emailLink = $('#email'); 
 
     emailLink.attr('href', 'mailto:[email protected]?subject=' + $('#subject').val() + '&body=' + $('#body').val()); 
 
    }) 
 
});
/* CSS */ 
 
div { 
 
    cursor: pointer; 
 
    color: blue; 
 
    text-decoration: underline; 
 
}
<!-- HTML --> 
 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
Subject: <input type="text" id="subject"><br> 
 
Body: <input type="text" id="body"><br> 
 

 
<div>Update Email Settings</div> 
 
<a id="email" href="mailto:[email protected]"> 
 
    Send Email 
 
</a>

注意,這仍然會使用用戶的默認電子郵件客戶端,也不會發送電子郵件自身。但是,它允許您從表單中更改電子郵件的主題和內容,並將其傳遞給電子郵件客戶端。

+0

我很熟悉那種方法,謝謝。我想用一個表格,因爲它看起來更專業。 – lampShade 2012-07-24 01:27:25

+2

@lampShade:作爲我的用戶,我更喜歡'mailto:'解決方案。不知道爲什麼你認爲表單看起來更專業,但用我的電子郵件客戶端,我至少知道該消息已發送(並已存檔,因此如果需要,我可以找到它) – zerkms 2012-07-24 01:32:20

+1

它看起來只是CSS。第二種解決方案也使用form('input')元素,而不是用'form'包裝。 HTML是靈活的。除了打開外部電子郵件客戶端,沒有其他(純JS + HTML)解決方案。任何純粹通過網絡完成此操作的合理解決方案都涉及服務器代碼。 – 2012-07-24 02:25:00

1

如果您的意思是您想要動態發送電子郵件,則需要比PHP或ASP.net更多的HTML和JavaScript。

2
<a href="mailto:[email protected]">someOne</a> 

它將打開一個電子郵件客戶端軟件,如MS-Outlook。 如果你想直接用HTML & JS發送它,這是不可能的。

因此,郵件需要SMTP協議才能發送郵件,但瀏覽器只支持HTTP協議。 你需要一個SMTP服務器發送郵件,並與一些服務器端代碼,如PHP或JSP ...

1

您可以使用超鏈接,使用戶點擊然後重定向用戶到默認郵件系統。 例如,你可以使用

<a href="mailto:[email protected]">Username</a> 
相關問題