html <a - Posso impostare l'oggetto / contenuto dell'email usando mailto :?





href="mailto:[email protected]">scrivi mail</a> (11)


Sì, guarda tutti i suggerimenti e trucchi con mailto: http://www.angelfire.com/dc/html-webmaster/mailto.htm

esempio di mailto subject:

<a href="mailto:[email protected]?subject=free chocolate">example</a>

mailto con contenuto:

<a href="mailto:?subject=look at this website&body=Hi,I found this website
and thought you might like it http://www.geocities.com/wowhtml/">tell a friend</a>

Come accennato nei commenti, sia il subject che il body devono essere evitati correttamente. Utilizza encodeURIComponent(subject) su ciascuno, anziché codifica manuale per casi specifici (come %0A per interruzioni di riga).

È possibile impostare l'oggetto / contenuto della posta elettronica quando uso mailto :?




Lo schema mailto: URL è definito in RFC 2368 . Inoltre, la convenzione per la codifica delle informazioni in URL e URI è definita in RFC 1738 e quindi in RFC 3986 . Questi prescrivono come includere il body e le intestazioni del subject in un URL (URI):

mailto:[email protected]?subject=current-issue&body=send%20current-issue

In particolare, è necessario codificare per percentuale l'indirizzo e-mail, l'oggetto e il corpo e inserirli nel formato sopra riportato. Il testo con codifica percentuale è legale per l'uso in HTML, tuttavia questo URL deve essere codificato in entità per l'uso in un attributo href , secondo lo standard HTML4 :

<a href="mailto:[email protected]?subject=current-issue&amp;body=send%20current-issue">Send email</a>

E in generale, ecco un semplice script PHP che codifica per quanto sopra.

<?php
$encodedTo = rawurlencode($message->to);
$encodedSubject = rawurlencode($message->subject);
$encodedBody = rawurlencode($message->body);
$uri = "mailto:$encodedTo&subject=$encodedSubject&body=$encodedBody";
$encodedUri = htmlspecialchars($uri);
echo "<a href=\"$encodedUri\">Send email</a>";
?>






Si noti che non è possibile utilizzare l'HTML nel corpo del messaggio, in base a RFC 2368 :

Lo speciale hname "body" indica che l'hvalue associato è il corpo del messaggio. Il nome "corpo" dovrebbe contenere il contenuto per la prima parte di testo / corpo normale del messaggio. L'URL mailto è principalmente destinato alla generazione di brevi messaggi di testo che sono in realtà il contenuto dell'elaborazione automatica (come i messaggi "subscribe" per le mailing list), non i corpi MIME generali.

Credito: https://.com/a/13415988/1835519




È possibile aggiungere un argomento aggiunto al comando mailto utilizzando uno dei seguenti modi. Aggiungi? Invia mailto al tag mailto.

<a href="mailto:[email protected]?subject=testing out mailto">First Example</a>

Possiamo anche aggiungere del testo nel corpo del messaggio aggiungendo & body alla fine del tag come mostrato nell'esempio seguente.

 <a href="mailto:[email protected]?subject=testing out mailto&body=Just testing">Second Example</a>

Oltre al corpo, un utente può anche digitare & cc o & bcc per compilare i campi CC e BCC.

<a href="mailto:[email protected]?subject=testing out mailto&body=Just testing&[email protected]&[email protected]">Third
    Example</a>

Come aggiungere oggetto al tag mailto













Sì:

Usalo per sperimentare elementi di mailto form e collegare la codifica.

Puoi inserire oggetto, corpo (cioè contenuto), ecc. Nel modulo, premere il pulsante e vedere il link mailto html che puoi incollare nella tua pagina.

È anche possibile specificare elementi raramente conosciuti e utilizzati: cc, bcc, dalle e-mail.




Ecco uno snippet eseguibile per aiutarti a generare mailto: collegamenti con oggetto e corpo opzionali.

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>




Wow, ci sono molte complessità qui. Se tutto quello che vuoi fare è catturare gli errori di sintassi più ovvi, vorrei fare qualcosa del genere:

\[email protected]\S+

Solitamente rileva gli errori più ovvi che l'utente fa e assicura che il modulo sia per lo più corretto, che è ciò che è la validazione JavaScript.





html email mailto