2026, 새로운 도약을 시작합니다.

첨부파일 크기와 파일이름을 뽑아 오고 싶어서 몇일째 찾아보는중입니다 채택완료

저는 비전공자 이고,

개발자도 아닙니다.

그래서 질문 자체도 이상하게 보이실지 모릅니다.

자바스크립트로 첨부파일 크기와 파일이름을 가져오고 싶은데..

Copy

여기서 id가 bf_file0, bf_file_1 이런식으로 생성될꺼라 생각되어서

bf_file_0 으로 테스트를 해봤습니다.

Copy




console.log(document.querySelectorAll('#bf_file_1').length);

console.log($("#bf_file").files[1].value);

console.log($("#bf_file").files[0].value);



등등 헤아리기 힘들만큼 많이 시도해 봤지만 다 안되네요.

제가 접근해야되는 방향을 알려주세요.

개발자가 되고 싶은 생각은 없습니다.

(배워서 그쪽으로 나가기엔 너무 나이를 먹었습니다.)

쉽게 접근 할수있는 방법을 알려주세요.

감사합니다.

답변 2개

채택된 답변
+20 포인트
Copy




inputElement = document.getElementById('bf_file_');

labelElement = document.getElementById('file-name_');

inputElement.onchange = function(event) {

var path = inputElement.value;

labelElement.innerHTML = path.split(/(\\|\/)/g).pop();

}

ex)

Copy
로그인 후 평가할 수 있습니다

답변에 대한 댓글 4개

답변 감사합니다.
저는 기존 소스를 유지한 상태에서 첨부파일의 속성 (이름, 용량 등)을 얻기 위한 질문이였는데
통채로 소스를 짜주셨네요.

제 실력으로 주신 소스 파악하는 데만 몇달이 걸리것같습니다.ㅠㅠㅠㅠ
[code]
<input type="file" class="form-control" id="bf_file_<?php echo $i+1 ?>" name="bf_file[]" value="사진선택" onchange="showFileInfo(this)">
<p id="fileInfo"></p>
<script>
function showFileInfo(input) {
if (input.files && input.files[0]) {
var file = input.files[0];
var fileSize = file.size; // 파일 크기 (바이트)
var fileName = file.name; // 파일 이름

// 파일 크기를 메가바이트로 변환 (1MB = 1024 * 1024 바이트)
var fileSizeMB = fileSize / (1024 * 1024);

// 파일 정보를 화면에 출력
document.getElementById('fileInfo').innerHTML = "파일 이름: " + fileName + "<br>파일 크기: " + fileSizeMB.toFixed(2) + "MB";
}
}
</script>
[/code]
이 코드를 참고 하세요.
일단 하는데까지 해볼께요.
채택 감사 합니다.

댓글을 작성하려면 로그인이 필요합니다.

<input type="file" class="form-control" id="bf_file_<?php echo $i+1 ?>" name="bf_file[]" value="사진선택">

여기보면 id="bf_file_<?php echo $i+1 ?>" 아이디값을 별도로 주셔는데 이뉴가 뭔가요 ? 파일을 여러게 연속 불러오기 위해서 인가요?

그냥 클래스 안에 다 정의 하시고 스크립트 처리 하세요

<input type="file" class="form-control bf_file" name="bf_file[]" value="사진선택">

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

웅프님 답변 감사합니다.
제가 짠 소스가 아니라. 이윰빌더 소스 입니다.

기존 소스는 그대로 둔상태로 자바스크립트에서 가져오는 방법으로 해결하고 싶습니다.
id="bf_file_<?php echo $i+1 ?> 그대로 두고
자바스크립트에서 가져오는건 힘들까요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고