Вопрос по javascript, html – Javascript добавление переноса строки в тело письма

16

Я устанавливаю тело письма, используя значения из формы

  firstname = bob
  lastname = dole

   ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname

  window.location.href = 'mailto:[email protected]?subject=test
  email&body=' + ebody;

Если я сделаю «оповещение (ebody)»; Я получаю перевод строки между именем и amp; фамилия, однако, когда он открывает внешний вид, вся строка ebody появляется без переноса строки в теле письма.

Я тоже пытался \ n. Есть ли что-то, что может дать линию перерыв?

заранее спасибо

ты пробовал кодировать символы? - & GT;%0D%0A GNi33
Просто идея, вы пытались избежать обратной косой черты, как\\r\\n? inhan
Является ли MIME-тип текстовым / простым для вашей электронной почты? Outlook может пытаться интерпретировать как форматированный текст. g13n

Ваш Ответ

3   ответа
7

%0D%0A для разрывов строк.

firstname = 'Aung ';
lastname = 'Kyaw Zaw';

ebody = 'First Name: ' + firstname + '%0D%0A' + 'Last Name: ' + lastname;

window.location.href = 'mailto:[email protected]?subject=testemail&body=' + ebody;

http://www.w3schools.com/tags/ref_urlencode.asp

Error: User Rate Limit Exceeded srini
37

RFC 2368 говорит, что содержимое тела письма должно быть закодировано в URL, используя форму% -escaped для символов, которые обычно кодируются в URL. Эти символы включают пробелы и (как явно указано в разделе 5 2368) CR и LF.

Вы можете сделать это, написав

ebody = 'First%20Name:%20' + firstname + '%0D%0A' + 'Last%20Name:%20' + lastname;

но проще и лучше, чтобы JavaScript выполнял переход за вас, например так:

ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname;
ebody = encodeURIComponent(ebody);

Это не только избавит вас от необходимости идентифицировать и искать шестнадцатеричные значения символов, которые должны быть закодированы в вашем фиксированном тексте, но также будет кодировать любые тупые символы вfirstname а такжеlastname переменные.

Error: User Rate Limit Exceeded srini
2

что outlook попытается вывести это в виде html / rich text, так что в этом случае вам понадобится что-то вроде следующего (включая тег br с urlencoded):

 firstname = bob
  lastname = dole

   ebody = 'First Name: ' + firstname + '%3C%2Fbr%3E' + 'Last Name: ' + lastname

  window.location.href = 'mailto:[email protected]?subject=test
  email&body=' + ebody;
Error: User Rate Limit Exceeded srini

Похожие вопросы