Yêu cầu thg 5 28, 2021 8:35 SA 72 0 1
  • 72 0 1
+2

Hỏi về form email trong html

Chia sẻ
  • 72 0 1

Chào mọi người. Mình có 1 đoạn code như dưới để khi người dùng nhập dữ liệu rồi submit thì sẽ mở email của họ ra với các trường như đã nhập bên dưới. Nhưng mình đang gặp 1 vấn đề là ví dụ trường subject mình nhập là: "Liên hệ với tôi" thì ở form email sau khi submit sẽ bị chuyển thành "Liên+hệ+với+tôi". Vậy cho mình hỏi làm thế nào để loại bỏ được dấu + vậy ạ? Mình cảm ơn.

<form action="mailto:example@gmail.com" method="GET">
          subject:
          <input name="subject" type="text" />
          body:<br />
          <textarea name="body"></textarea><br />
          send:<br />
          <input type="submit" value="Send" />
</form>

1 CÂU TRẢ LỜI


Đã trả lời thg 5 28, 2021 9:12 SA
Đã được chấp nhận
+1

Bạn thử xử lý với mã javascript xem sao nhé:

<script language="javascript">
    function sendMail () {
        const email = "example@gmail.com";
        const subject = document.getElementById("subject").value;
        const body = document.getElementById("body").value;
        window.location.href = `mailto:${email}?subject=${subject}&body=${body}`
    }
</script>

<form>
    subject:
    <input id="subject" name="subject" type="text" />
    body:<br />
    <textarea id="body" name="body"></textarea><br />
    send:<br />
    <input type="button" value="Send" onclick="sendMail()" />
</form>

Chúc bạn thành công!

Chia sẻ
Avatar quang hải @sven_9x
thg 5 28, 2021 9:29 SA

@phamtuananh760 mình chạy đc rồi. tks b. Với bạn cho mình hỏi thêm mình muốn cái body xử lý ở trong function js. Mình nối thêm các đoạn xuống dòng ví dụ:

Họ tên: ABC
Sđt: 08xxxx

Thì làm thế nào nhỉ bạn?

Avatar Phạm Tuấn Anh @phamtuananh760
thg 5 28, 2021 9:36 SA

@sven_9x Bạn có thể dùng hàm encodeURIComponent() để format lại body như này

const body = encodeURIComponent(document.getElementById("body").value);
Avatar quang hải @sven_9x
thg 5 28, 2021 10:52 SA

@phamtuananh760 mà bạn ơi. đoạn code của bạn thì có chạy đc trên window ko nhỉ? Mình đang code trên macbook?

Avatar Phạm Tuấn Anh @phamtuananh760
thg 5 29, 2021 6:28 SA

@sven_9x được chứ bạn

Avatar quang hải @sven_9x
thg 6 1, 2021 9:27 SA

@phamtuananh760 À mà chỉ có thể mở bằng app mail đúng ko bạn? có cách nào mở đc bằng web mail trên trình duyệt ko nhỉ bạn?

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí