mailto body에 줄 바꿈 삽입


166

mailto 본문에 줄 바꿈을 삽입하고 싶습니다. % 0A, % 0D 및 % 0D % 0A를 시도했습니다. 아무것도 나를 위해 일하지 않았다. Mac OSX에서 Chrome을 사용하여 Gmail, Yahoo, Apple Mail, Outlook 2010, Outlook.com 및 Thunderbird에서 테스트했습니다.

도와주세요?

내 코드는 다음과 같습니다.

<a href="mailto:email@mycompany.com?subject=Subscribe&body=Lastame%20%3A%0D%0A%20Firstname%20%3A"><img alt="Subscribe" class="center" height="50" src="subscribe.png" style="width: 137px; height: 50px; color: #4da6f7; font-size: 20px; display: block;" width="137"></a>


@ 존 어떻게 중복합니까? 그것은 %20이 질문과 같은 새로운 줄을 만드는 방법이 아니라, 새로운 줄을 입력하는데 사용되는 것에 대한 매우 구체적인 질문입니다.
jdmdevdotnet

1
나에게 속임수처럼 보인다. 그 질문은 "공백처럼 줄 바꿈을 삽입하는 방법"을 묻습니다. 사용하는 방법을 요구하지 않는 %20 으로 줄 바꿈. 내가 보는 유일한 차이점은 이것이 신체에 관한 것인데, 그 질문은 그 주제에 관한 것입니다. 그러나 두 경우 모두 동일한 대답입니다.
Amy

답변:


242

<br>마케팅 응용 프로그램에서 인식 할 수 있도록 html 태그를 사용해 보는 것이 좋습니다 .

사용 %0D%0A합니다. 이메일이 HTML 형식 인 한 작동합니다.

<a href="mailto:email@mycompany.com?subject=Subscribe&body=Lastame%20%3A%0D%0AFirstname%20%3A"><img alt="Subscribe" class="center" height="50" src="subscribe.png" style="width: 137px; height: 50px; color: #4da6f7; font-size: 20px; display: block;" width="137"></a>

이름 앞에 % 20을 꺼내고 싶을 것입니다. 그렇지 않으면 다음 줄의 첫 문자로 공백이 생깁니다.

참고로, 코드로 이것을 테스트 할 때 여분의 간격과 함께 작동했습니다. HTML 형식을 허용하지 않는 메일 클라이언트를 사용하고 있습니까?


1
이미 시도했지만 %0D%0A작동하지 않습니다. 이메일 마케팅 솔루션을 사용하여 뉴스 레터를 보냅니다. 코드를 다시 작성한다고 가정합니다.
Marion

1
아, 별도의 솔루션을 사용하고 있다면 HTML 태그 "<br>"를 사용해 보셨습니까? 타사 응용 프로그램을 사용할 때 때로는 작동합니다.
Jem

2
다른 플랫폼으로 테스트를했는데 코드가 완벽하게 작동합니다! 내가 사용하는 솔루션에서 나온 것입니다. 그 모든 시간은 아무것도 잃어 버렸습니다 ... 죄송합니다, 다시 한 번 도와 주셔서 감사합니다
Marion

4
당신은 모든 변환하려는 경우 <br>, <br/>또는 <br />%0D%0A당신이 할 수있는var emailBody = htmlBody.replace(/<br\s*\/?>/mg,"%0D%0A");
주앙 멘텔 페레이라

117

RFC2368 정의하는 mailto:상기 한 예에 의해 강화, RFC1738은 , 명시 적으로 줄 바꿈을 생성하기 만 유효한 방법으로는 것을 명시한다 %0D%0A.

이것은 gopher, smtp, sdp, imap, ldap 등과 같은 모든 URL 체계에도 적용됩니다.


7
JavaScript를 사용하여 mailto 링크를 구성하는 경우을 사용 escape('\r\n')하여 얻을 수 %0D%0A있습니다.
Mark Rhodes

6
추가 참고 사항 : ES6 / ES2015 문자열 템플릿으로 링크를 구성하는 경우 원시 코드 ( %0D%0A)가 제대로 작동합니다.
Adam Simpson

@MarkRhodes는 : 흔한는 URI이기 때문에 당신은 또한 다음 메일 본문 :-)에 필요한 모든 문자를 탈출 할에 encodeURI (myMailToURIString)를 사용할 수 있습니다
라스 Juel 젠슨

4

안드로이드 용 Gmail에서 흥미롭게 %0D%0A작동하지 않으며 작동 <br>합니다.

<a href="mailto:anything@any.com?subject=This%20is%20Subject&body=First line<br>Second line">
   click here to mail me
</a>

-1

JavaScript를 사용하는 일반 텍스트 전자 메일의 경우 \r와 함께 사용할 수도 있습니다 encodeURIComponent().

예를 들어이 메시지는 다음과 같습니다.

hello\rthis answer is now well formated\rand it contains good knowleadge\rthat is why I am up voting

URI 인코딩, 결과 :

hello%0Dthis%20answer%20is%20now%20well%20formated%0Dand%20it%20contains%20good%20knowleadge%0Dthat%20is%20why%20I%20am%20up%20voting

그리고 href를 사용하여 :

mailto:me@house.country?body=hello%0Dthis%20answer%20is%20now%20well%20formated%0Dand%20it%20contains%20good%20knowleadge%0Dthat%20is%20why%20I%20am%20up%20voting

다음과 같은 이메일 본문이 나타납니다.

hello
this answer is now well formated
and it contains good knowleadge
that is why I am up voting

1
@littlecoder 대답이 틀리기 때문에 형식이 잘못되고 단어가 잘못 작성되어 필수 컨텍스트가 생략됩니다. 이 페이지에 방문한 사람들을 돕는 것만 큼 혼동을 일으킬 가능성이 있습니다. 이 사이트의 표준으로는 유용하지 않으므로 그에 따라 투표되었습니다.
UnrealEagle
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.