2010-08-13 3 views
0

사용자가 파일을 첨부하고 볼 수있는 로컬 웹 앱이 있습니다. 파일보기는 단순히 window.open (fileName)이지만 파일 이름에 # 기호가 있으면 파일이 dns 오류로 열리지 않습니다. # %23 및 # \# 기호를 이스케이프했는데 여전히 열리지 않습니다 ... 거기에 # 기호를 이스케이프 할 필요가 뭔가 특별한 있습니다. 열기 url?Javascript : # 로그인 URL이있는 Window.Open?

원본 파일의 파일 경로를 웹 브라우저에 직접 복사 했으므로 잘 열리므로 window.open 명령에 문제가 있다고 가정했습니다.

EDIT : window.open 코드를 요청하십시오. URL은 같은 \\ 경로 항상 우리의 네트워크에서 현지 뭔가를하다 \ fileName.pdf

window.open('file:' + url, '', 'top=10,left=10,height=' + (screen.height - 50) + ',width=' + (screen.width - 50) + ',titlebar=no,resizable=yes,scrollbars=1'); 

편집 # 2 : 나는 % (23)은 window.open 문자열 앞에 #를 오른쪽으로 탈출 시도하고 프롬프트로 표시 바로 전에 window.open, 복사 할 수 있습니다/IE에 문자열을 붙여 넣을 잘 열립니다, 그러나 window.open 코드 여전히 실패합니다.

URL 경로 : file:\\NetworkPath\DoC#1.pdf

값 window.open 나주고있다 : res://ieframe.dll/dnserror.htm#file://NetworkPath/Doc이 응용 프로그램은 IE를 사용하는 우리의 소프트웨어 응용 프로그램 내에 내장 된 웹 브라우저에서 호스팅되는

(나는 6 생각을)

+0

상황에 따라 두 번 인코딩해야 할 수도 있지만 '% 23'이 작동해야합니다. 시도중인'window.open()'코드를 붙여 넣을 수 있습니까? –

+0

원래의 포스트에 추가했습니다 – Rachel

+0

브라우저 특정 문제로 보입니다. 왜냐하면 IE에서 '#'이 (가) 포함 된 URL을 열면 해당 태그에 대한 클릭을 에뮬레이션하여 작동합니다. file:///C:/Users/ehpc/Desktop/file#fdfds.txt. 그러나 에 target = "_ blank"를 적용하면 작동하지 않습니다. – ehpc

답변

1

버그가있는 것처럼 보입니다 Microsoft's kb 다시 IE6과 함께. :)

+0

고맙습니다. 아마 내 문제 일 것입니다. 이 소프트웨어가 사용하는 임베디드 웹 브라우저는 IE6이며 업데이트 할 수 있다고는 생각하지 않습니다. 필자는 FileUpload 프로세스를 수정하기 전에 파일 이름에서 심볼을 지우고 기존 파일에 대해 URL이 포함 된 프롬프트를 던져서 웹 브라우저에 복사/붙여 넣기를 할 수 있도록했습니다. 앱에는 소수의 사용자 만 있으며 기본 지침을 처리 할 수있는 종류입니다. :) – Rachel