簡體   English   中英

將用戶生成的主題添加到“ mailto:”

[英]Add a User Generated subject to “mailto:”

我是HTML / CSS和JavaScript的初學者,我在完成最終項目時需要幫助,因為在互聯網上找不到太多幫助。 我所有的搜索都使我陷入同一困境,這向我展示了如何使用以下方法添加主題:

?subject=Subject You Selected

這是將主題行添加到電子郵件中的好方法,但是我該如何執行用戶從網頁上的文本框中輸入的主題行。 我也可以對身體含量做同樣的事情嗎?

對不起,我忘記添加我的代碼

HTML:

<form id="email_form" name="email_form" action= "sent/sent.html" method="get">
<label for="email_address1"id="label">Email Address:</label>
<input type="text" id="email_address1" name="email_address1"</label>
<span id="email_address1_error">*</span><br><br>

<label for="emal_address2"id="label">Re=Enter Email Address:</label>
<input type="text" id="email_address2" name="emaill_address2">
<span id="email_address2_error">*</span><br><br>

<label for="name"id="label">Your Name:</label>
<input type="text" id="name" name="name">
<span id="name_error">*</span><br><br>

<label for="subject"id="label">Subject:</label>
<input type="text" id="subject" name="subject">
<span id="subject_error">*</span><br><br>

<label for="message" id="label">Message:</label>
<input type="text" id="message" name="message">
<span id="message_error">*</span><br><br>

<label id="label">&nbsp;</label>

<input type="button" id="join_list" value="Submit">
</form>

JS:

var $=function(id){

return document.getElementById(id);
}
var joinList=function (){
var emailAddress1=$("email_address1").value;
var emailAddress2=$("email_address2").value;
var Name=$("name").value;
var Subject=$("subject").value;
var Message=$("message").value;
var isValid=true;
var Toemail="josephdouso@msn.com;joseph.douso@my.liu.edu";
var CCemail="Research@drscovetta.net";


if(emailAddress1=="")
{
    $("email_address1_error").firstChild.nodeValue="This feild is required.";
    isValid=false;
}
else
{
    $("email_address1_error").firstChild.nodeValue="";
}

if(emailAddress2=="")
{
    $(email_address2_error).firstChild.nodeValue="This feild is required.";
    isValid=false;
}
else if (emailAddress1!==emailAddress2)
{
    $(email_address2_error).firstChild.nodeValue="The email addresses must match";
    isValid=false;
}
else
{
    $("email_address2_error").firstChild.nodeValue="";
}

if(Name=="")
{
    $("name_error").firstChild.nodeValue="This feild is required.";
    isValid=false;
}
else
{
    $("name_error").firstChild.nodeValue="";
}
if(Subject=="")
{
    $("subject_error").firstChild.nodeValue="This feild is Required";
    isValid=false;
}
else
{
    $("subject_error").firstChild.nodeValue="";
}
if(Message=="")
{
    $("message_error").firstChild.nodeValue="This feild is requried";
    isValid=false;
}
else
{
    $("message_error").firstChild.nodeValue="";
}



if (isValid)
{

var mailto_link = 'mailto:' + Toemail + '?cc=' + CCemail + '&subject=' + Subject + '&body=' + Message;


 win = window.open(mailto_link, 'sent.html');

}


}
window.onload=function()
{
$("join_list").onclick=joinList;
$("email_address1").focus();

}

簡而言之,JS將檢查兩個電子郵件條目是否正確,然后檢查其他元素是否包含某些內容。 驗證完成后,我希望JS發送帶有用戶在站點上輸入的所有詳細信息的消息。 具體來說,我希望客戶端電子郵件應用程序打開並用用戶在網頁上輸入的數據填充。 我非常確定代碼將進入最后的“ if語句”

我已經更新了代碼以反映“ nevermind”的幫助。 現在,該網頁將打開客戶端電子郵件應用程序,並填充所需的信息。

這是一種可能的方法。 我剛剛對代碼進行了少許修改(他使用jQuery,我將其制成香草JS): http : //fiddle.jshell.net/james2doyle/66PxB/ 因此,感謝Doyle先生

HTML:

<form>
Subject:<input id="subject"/>
Message:<input id="message" />
</form>
<button id="sender">Send email</button>

JS:

document.getElementById('sender').addEventListener("click", sendEmail);

    function sendEmail() {
    var email = 'someemail@gmail.com';
    var message = document.getElementById('message').value;
    var subject = document.getElementById('subject').value;
    var mailto_link = 'mailto:' + email + '?subject=' + subject + '&body=' + message;

        win = window.open(mailto_link, 'emailWindow');
        if (win && win.open && !win.closed) win.close();

    }

https://jsfiddle.net/d6x0v3ov/

這是怎么做的

 var email = 'someone@email.com'; var subject = 'your subject'; var body = 'body message' var url = 'mailto:' + email + '?subject=' + subject + '&body=' + body; document.body.innerHTML = '<a href="' + url + '">Test link</a>'; 

運行代碼段在新標簽頁中打開鏈接

如果您不介意使用jquery,這對於jquery非常簡單。

HTML:

<input id="subject" type="text" />
<button id="add_subject">
Add subject
</button>
<a id="send_link" href="mailto:nomai1.com?subject=free beer">Send</a>

JS:

$(document).ready(function() {
  $("#add_subject").on("click", function() {
      $("#send_link").attr("href", "mailto:nomai1.com?subject="+$("#subject").val());
  });
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM