Я пытаюсь закодировать строку из текстовой области, чтобы я мог вывести закодированный результат для ссылки mailto.Пробелы и специальные символы кодируются нормально, а разрыв строки - нет, они просто кодируются как пробел.Как мне закодировать разрывы строк?
if (id == 'subject' || id == 'body') {
let str = output.innerText;
str = encodeURIComponent(str);
// str = str.replace(/\n/g, "%0A").replace(/ /g, "%20").replace(/&/g, "%26");
output.innerText = str;
}
Я также пробовал это, что тоже не работает:
str = encodeURIComponent(str).replace(/\n/g, '%0D%0A');
Вот как выглядит мой вывод:
mailto:mckeever02@gmail.com?body=Testing%20Should%20be%20a%20line%20break%20before%20this%20sentence
Обратите внимание, что разрывы строк просто кодируются в %20
(пробел).Есть идеи?