Сайт теперь "небезопасный" после добавления mailto? - PullRequest
0 голосов
/ 28 апреля 2020

Я добавил мой код после добавления mailto на мой сайт. Я либо ищу хорошую альтернативу mailto, либо просто исправлю.

<section class="about">
    <section>
        <h4>Form</h4>
        <form method="post" action="mailto:(my email)" target="_top">
            <div class="row gtr-uniform">
                <div class="col-6 col-12-xsmall">
                    <input type="text" name="demo-name" id="demo-name" value="" placeholder="Name" />
                </div>
                <div class="col-12">
                    <textarea name="demo-message" id="demo-message" placeholder="Enter your message" rows="6"></textarea>
                </div>
                <div class="col-12">
                    <ul class="actions">
                        <li><input type="submit" value="Send Message" class="primary" /></li>
                        <li><input type="reset" value="Reset" /></li>
                    </ul>
                </div>
            </div>
        </form>
    </section>
</section>

1 Ответ

0 голосов
/ 28 апреля 2020

Избегайте использования mailto в действии форм. Это можно сделать в javascript, как показано ниже
Измените свой код HTML следующим образом

<section class="about">
    <section>
        <h4>Form</h4>
        <form method="post" target="_top">
            <div class="row gtr-uniform">
                <div class="col-6 col-12-xsmall">
                    <input type="text" name="demo-name" id="demo-name" value="" placeholder="Name" />
                </div>
                <div class="col-12">
                    <textarea name="demo-message" id="demo-message" placeholder="Enter your message" rows="6"></textarea>
                </div>
                <div class="col-12">
                    <ul class="actions">
                        <li><input type="button" id="send_email" value="Send Message" class="primary" /></li>
                        <li><input type="reset" value="Reset" /></li>
                    </ul>
                </div>
            </div>
        </form>
    </section>
</section>

И добавьте javascript, чтобы выполнить mailto

your_email = "test@test.com";
emailSub = "test";
emailBody = document.getElementById("demo-message").innerText; 
var email_btn = document.getElementById('send_email');
email_btn.addEventListener("click",function(e){
    e.preventDefault();
    location.href = "mailto:"+your_email+'&subject='+emailSub+'&body='+emailBody;
});

Надеюсь, это поможет вам.

...