Với Javascript, bạn utf-8% mã hóa chủ đề và giá trị hfvalues bằng cách sử dụng encodeURIComponent() trên trang UTF-8.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<script>
function SendLinkByMail(href) {
var subject= "Interesting Information";
var body = "I thought you might find this information interesting:\r\n\r\n<";
body += window.location.href;
body += ">";
var uri = "mailto:?subject=";
uri += encodeURIComponent(subject);
uri += "&body=";
uri += encodeURIComponent(body);
window.open(uri);
}
</script>
</head>
<body>
<p><a href="javascript:(function()%7BSendLinkByMail()%3B%7D)()%3B">Email link to this page</a></p>
</body>
</html>
Nếu bạn đang thực hiện phía máy chủ này, bạn chỉ có thể tạo liên kết mailto và phát nó làm giá trị thuộc tính href. Sau đó, bạn sẽ không cần JS chút nào.
Tôi giả sử ASP có một số hàm mã hóa URI hoạt động như encodeURIComponent().
Bạn cũng có thể xem nguồn trang mailto URI composer của mình làm ví dụ khác.
Bạn cũng có thể xem http://shadow2531.com/opera/testcases/mailto/mailto_uri_scheme_idea.html#send_link_by_mail và mailto URI syntax validator của tôi.
Đối với < và > mà tôi mã hóa URI trong, trong mã JS ở trên, hãy xem "Phụ lục C. Phân định URI trong ngữ cảnh" của RFC3986 vì lý do.
Ngoài ra, thay vì window.location.href, bạn có thể sử dụng window.location hoặc document.location.href hoặc document.location. Tôi thường sử dụng "document.location".
Vì sao bạn sử dụng URI Javascript thay vì thuộc tính onclick, hãy xem this answer.
Cũng lưu ý rằng trong JS URI trong mã ở trên, tôi đã bao bọc mã trong một hàm ẩn danh. Điều này không cần thiết trong trường hợp này bởi vì hàm không trả về bất kỳ thứ gì có thể thay đổi tài liệu khi bạn nhấp vào. Nhưng, nó chỉ là làm tất cả các thời gian cho biện pháp tốt.
Xem Javascript URI compose để giúp tạo URI javascript.
Javascript có thể làm điều này cho bạn. Bằng cách sử dụng "document.location.href". Hoặc, nếu bạn đang sử dụng .php bạn có thể làm điều đó dễ dàng hơn. Bạn có thể sử dụng php? cho tôi biết và tôi có thể làm ví dụ cho bạn! –
Không, tôi sử dụng Asp;) Nhưng làm cách nào tôi có thể viết javascript ở phần đó? (Body = "...") –