2014-12-17 2 views
5

JavaScript로 CSV 요소를 만들고 해당 파일을 다운로드하기 위해 클릭 시뮬레이션을하고 있습니다.직접 다운로드하는 대신 다운로드 위치를 묻습니다.

대신 직접 다운로드하는 대신 다운로드 할 파일의 위치를 ​​선택하라는 다운로드 프롬프트가 필요합니다.

var csvString = Papa.unparse(result,{ 
           quotes: false, 
           delimiter: ",", 
           newline: "\r\n" 
         }); 
var a   = document.createElement('a'); 
a.href  = 'data:attachment/csv,' + escape(csvString); 
a.download = "download.csv"; 
a.click(); 

어떻게 수행 할 수 있습니까?

+1

수 없습니다. 사용자는 다른 파일 형식에 대해 어떤 일이 발생하는지 선택할 수 있습니다. 개발자 (앱 개발자)는 자신의 (사용자) 선택 사항을 무시할 수 없습니다. –

+0

@torazaburo 문제는 사용자가 선택할 수 없다는 것입니다. 앱 개발자는 이름이 'download.csv'라고 말하면 사용자 개입없이 저장됩니다. – Chet

+0

사용자가 메시지를 저장하지 않고 파일을 저장하도록 선택한 경우 이러한 일이 발생합니다. 사용자는 그 선택을 취소해야합니다. 정확한 방법은 운영 체제에 따라 다릅니다. 예를 들어 Chrome에는 설정에 "다운로드하기 전에 각 파일을 저장할 위치 묻기"옵션이 있습니다. 그러면 사용자는 파일을 저장할 위치를 선택하거나 기본 이름을 변경할 수 있습니다. –

답변

7

이것은 브라우저 별 설정입니다. 다운로드 대화 상자가 열리면 :

  1. 은 크롬에서 : 8 Always ask me where to save files Internet Explorer에서
  2. , Tools > Options로 이동 개방 General 탭을 선택하고 라디오 버튼 : 파이어 폭스에서 Ask where to save each file before downloading
  3. Settings > Downloads >로 이동 한 후 체크 박스를 선택 , Save 버튼을 클릭하고 위치를 선택하십시오.
관련 문제