2010-01-19 2 views
0

동일한 파일 내의 다른 Javascript 함수에서 사용하려면 HTM 파일의 파일 이름 (파일이 자체 파일 이름을 검색해야 함)을 검색해야합니다. 지금까지 나는이 - 내가 좋아했던 var에 DOCNAME가 동적으로 생성되는Javascript로 파일 이름 검색하기 (URL없이)

var Docname = "ESSA_CL_2009_01" 
var DSstem = new Spry.Data.XMLDataSet("ESSA10_DA_sourceData_19_1.xml", "ESSA_CL_2009/" + Docname + "/Item_stem"); 

을합니다 (활발한 또는 AJAX 물건이 이미 설정되어 있습니다). 아직 URL이 없습니다. 최종 목적지를 제어 할 권한이 없습니다.

도움을 주시면 감사하겠습니다. 감사.

+0

이 경우 무엇이'ESSA_CL_2009_01'입니까? –

+0

ESSA_CL_2009_01은 일을 수동으로 수행 할 경우 .htm 접미사가없는 파일 이름입니다. 그러나 나는 동적으로 일을하고 싶다. 그래서 위의 코드의 첫 번째 줄을 바꿔야한다. 나는 (내가 처음 언급 한 것에 반하여) URL을 가지고 있다고 생각하고있다. 나는 앞의 URL 내용이없고 접미어가없는 파일 이름 만 필요로한다. – andrew

+0

이제 유사한 문제가 http://www.webmasterworld.com/forum91/386.htm에서 논의되었습니다. URL에서 파일 이름을 검색하기 위해 제공된 코드는 다음과 같습니다. var url = document. URL; var Docname = (url.substring (url.lastindexOf ("\\") + 1, url.lastindexOf ("\."))); // 윈도우 용 var Docname = (url.substring (url.lastindexOf ("\ /") + 1, url.lastindexOf ("\."))); // for * nix document.write (Docname); 이유가 무엇이든 작동하지 않는 것 같습니다. – andrew

답변

1

"Docname"이 현재 페이지의 정적 파일 경로를 참조하는 경우 document.location.pathname을 사용하여 URL의 경로 이름 부분을 가져온 다음 문자열로 구문 분석하여 원하는 부분 만 가져올 수 있습니다 .

+0

감사합니다 .. um - 정적 파일 경로가 없습니다. 파일의 최종 대상 위치가 다르며 알 수 없습니다 .. var url = document 사용 .URL은 경로 이름 (?)이 아닌 초기 코드 줄로 사용하는 것이 옳은 방법 인 것 같습니다.하지만 작동하지 않습니다. (var url = document.location.pathname;을 시도했습니다.) – andrew

0
var getFileName = function (uri) { 
    var fileName = uri.substr(uri.lastIndexOf("/") + 1); 
    return fileName.substr(0, fileName.lastIndexOf(".")); 
};