1090 Stimmen

Kann ich den Betreff/Inhalt einer E-Mail mit mailto: festlegen?

Ist es möglich, den Betreff/Inhalt der E-Mail festzulegen, wenn ich mailto: verwende?

5voto

Jure Sah Punkte 159

Beachten Sie, dass es nicht möglich ist, HTML im Nachrichtentext zu verwenden, gemäß RFC 2368 :

Der spezielle hname "body" zeigt an, dass der zugehörige hvalue der Körper der Nachricht ist. Der hname "body" sollte den Inhalt des ersten text/plain-Body-Teils der Nachricht enthalten. Die mailto-URL ist in erster Linie für die Generierung von kurzen Textnachrichten gedacht, die eigentlich der Inhalt einer automatischen Verarbeitung sind (z. B. "subscribe"-Nachrichten für Mailinglisten), nicht für allgemeine MIME-Bodies.

Kredit: https://stackoverflow.com/a/13415988/1835519

5voto

congusbongus Punkte 11902

Hier ist ein lauffähiges Snippet, das Ihnen hilft, mailto: Links mit optionalem Betreff und Text zu erzeugen.

function generate() {
  var email = $('#email').val();
  var subject = $('#subject').val();
  var body = $('#body').val();

  var mailto = 'mailto:' + email;
  var params = {};
  if (subject) {
    params.subject = subject;
  }
  if (body) {
    params.body = body;
  }
  if (params) {
    mailto += '?' + $.param(params);
  }

  var $output = $('#output');
  $output.val(mailto);
  $output.focus();
  $output.select();
  document.execCommand('copy');
}

$(document).ready(function() {
  $('#generate').on('click', generate);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="email" placeholder="email address" /><br/>
<input type="text" id="subject" placeholder="Subject" /><br/>
<textarea id="body" placeholder="Body"></textarea><br/>
<button type="button" id="generate">Generate & copy to clipboard</button><br/>
<textarea id="output">Output</textarea>

1voto

sed Punkte 3863

Wenn Sie Ihrer E-Mail einen HTML-Inhalt hinzufügen möchten, kodieren Sie Ihren HTML-Code für den Nachrichtentext und fügen Sie ihn in den Code Ihres mailto-Links ein. Das Problem dabei ist jedoch, dass Sie den Typ der E-Mail, die über diesen Link verschickt wird, nicht von Klartext auf HTML umstellen können, da der Client, der den Link verwendet, standardmäßig HTML-E-Mails versenden muss. Für den Fall, dass Sie testen möchten, hier ist der Code für eine einfache mailto-Link, mit einem Bild in einem Link (Angular-Stil Urls für Sichtbarkeit hinzugefügt) eingewickelt:

<a href="mailto:?body=%3Ca%20href%3D%22{{ scope.url }}%22%3E%3Cimg%20src%3D%22{{ scope.url }}%22%20width%3D%22300%22%20%2F%3E%3C%2Fa%3E">

Die html-Tags sind url-kodiert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X