Как вывести значение флажка в шаблоне электронной почты, только если оно отмечено? - PullRequest
0 голосов
/ 05 марта 2019

Я работаю над проектом, в котором пользователь может отправить выбранный флажок клиенту, указав адрес электронной почты.HTML-код:

<div class="row">
<div class="col-md-6 mx-auto">
    <form method="POST" action="/kidclinic/register">
        <div class="form-check">
            <input class="with-gap" value="http://test1.com" name="kidclinicchecbox1" type="checkbox" class="form-check-input" id="exampleCheck1">
            <label class="form-check-label">Text 1</label>
        </div> 
        <div class="form-check">
            <input class="with-gap" value="http://test2.com" name="kidclinicchecbox1" type="checkbox" class="form-check-input" id="exampleCheck1">
            <label class="form-check-label" >Text 2</label>
        </div> 
        <div class="form-check">
            <input class="with-gap" value="http://test3.com" name="kidclinicchecbox1" type="checkbox" class="form-check-input" id="exampleCheck1">
            <label class="form-check-label">Text 3</label>
        </div>        
        <div class="form-group">
            <label for="email">Send to</label>
            <input value="{{email}}" type="email" class="form-control" name="email" >
        </div>
        <p style="margin-top:16px"></p>
        <button type="submit" class="btn btn-primary">Send</button>
    </form>
</div>

Я дал одно и то же имя для каждого типа ввода флажка ввода, чтобы получить значение после его проверки.Вывод этого: вывод html

Я использую nodemailer для отправки почты.Мой код для nodemoailer:

const output = `
        <p>Fill up the forms</p>
        <h3>Please click the links</h3>
        <ul>
            <li>${req.body.kidclinicchecbox1}<br></li>
        </ul>                
    ` 

    async function main(){
        // create reusable transporter object using the default SMTP transport
       let transporter = nodemailer.createTransport({
         host: "hostname",
         port: 25,
         secure: false, // true for 465, false for other ports
         auth: {
           user: 'user.name', 
           pass: 'user.pass' // generated ethereal password
         },
         tls: {
           rejectUnauthorized: false
         }
       });
        // setup email data with unicode symbols
       let mailOptions = {
         from: '"Form App" ', // sender address
         to: req.body.email, // list of receivers
         subject: "Node contact Form app", // Subject line
         text: "Hello world?", // plain text body
         html: output // html body
       };
        // send mail with defined transport object
       let info = await transporter.sendMail(mailOptions)
        console.log("Message sent: %s", info.messageId);        
     }

Все работает нормально, но я не могу редактировать вывод электронной почты, что означает, что я не могу добавить тег привязки в выводе, и я не могу задать разрыв строки.Вывод электронной почты выглядит следующим образом вывод электронной почты .Есть ли какой-нибудь возможный способ добавить тег привязки в выводе письма?Пожалуйста, дайте мне знать, если я что-то пропустил?

1 Ответ

0 голосов
/ 05 марта 2019

Вы не добавили тег внутри

.Проверьте этот код
const output = `
        <p>Fill up the forms</p>
        <h3>Please click the links</h3>
        <ul>
            <li><a href="${req.body.kidclinicchecbox1}"> ${req.body.kidclinicchecbox1}</a><br></li>
        </ul>                
    `
...