2014-11-07 2 views
1

나는 angularjs를 사용하고 있으며 javascript에서 생성 된 vcard를 다운로드하는 시스템을 만들려고합니다. 이동 통신사에서 vcard를 사용하려면 데이터를 a 태그를 통해 다운로드해야합니다. 문제는 내가 href = "data : text/vcard"를 설정할 때마다 + 문자열이 vCard를 저장하지만 줄 바꿈을 제거한다는 것입니다. vCards는 개행과 함께 만 작동합니다.개행 문자가있는 href 데이터

데이터를 저장하는 동안 줄 바꿈 문자를 유지할 수있는 방법이 있습니까?

+0

vCards의 올바른 줄 바꿈 순서는 "\ r \ n"이며 "\ n \ r"이 아닙니다. :) – Michael

답변

2

아아, 알아 냈습니다. 단순히 encodeURIComponent() 함수를 사용했습니다.

var a = document.createElement('a'); 
     a.href  = 'data:text/vcard,' + encodeURIComponent(out_string); 
     a.target  = '_blank'; 
     a.download = 'contact.vcf'; 
     console.log(a.href); 
     document.body.appendChild(a); 
     a.click(); 
     document.body.removeChild(a); 
관련 문제