簡體   English   中英

使用smtpjs發送純javascript表單的checkbox值

[英]Using smtpjs to send the checkbox value of the form in pure javascript

我使用 SmtpJS 來捕獲我的表單的值並將其發送到我的 email。


到目前為止,我可以毫無問題地獲得輸入值

但是如何獲取選中復選框的值呢?

<div class="form-group">
 <label class="contact_us_title">Name</label>
 <input type="text" class="form-control" id="name" placeholder="Name">
</div>

<div class="form-group">
 <label class="contact_us_title">Question</label>
   <div >
     <label class="checkbox-inline"><input type="checkbox" value="">A</label>
     <label class="checkbox-inline"><input type="checkbox" value="">B</label>
     <label class="checkbox-inline"><input type="checkbox" value="">C</label>
   </div>
</div>

    <script>
    function sendMail() {
      let fields = {
        name: document.querySelector("#name").value,
      };
      let body = 'Name:' + fields.name;
      Email.send({
        Host : "smtp.yourisp.com",
        Username : "username",
        Password : "password",
        To : 'them@website.com',
        From : "you@isp.com",
        Subject: "title",
        Body: body,
      }).then(
              message => alert(message)
      );
    }
  </script>

添加提交按鈕以調用 sendMail function 並添加 class 並更新復選框的值以獲取值!

<div class="form-group">
  <label class="contact_us_title">Name</label>
  <input type="text" class="form-control" id="name" placeholder="Name" />
</div>

<div class="form-group">
  <label class="contact_us_title">Question</label>
  <div>
    <label class="checkbox-inline"
      ><input type="checkbox" class="ques" value="A" />A</label
    >
    <label class="checkbox-inline"
      ><input type="checkbox" class="ques" value="B" />B</label
    >
    <label class="checkbox-inline"
      ><input type="checkbox" class="ques" value="C" />C</label
    >
  </div>
</div>
<input type="submit" onclick="sendMail()" />

<script>
  function sendMail() {
    const questionValues = [...document.querySelectorAll('.ques:checked')].map(
      (e) => e.value
    );
    let fields = {
      name: document.querySelector('#name').value,
      question: questionValues,
    };
    console.log(fields);
    let body = 'Name:' + fields.name;
     Email.send({
       Host : "smtp.yourisp.com",
       Username : "username",
       Password : "password",
       To : 'them@website.com',
       From : "you@isp.com",
       Subject: "title",
       Body: body,
     }).then(
             message => alert(message)
     );
  }
</script>

暫無
暫無

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

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