JavaScript

[HTML_Objects] JS - <input type="file"> 객체 ★ - file타입 input태그 (= 인풋파일태그) ※ 첨부파일/파일첨부 업로드 커스텀

목차

  1. <input type="file"> 객체 정의 - 파일 인풋
  2. <input type="file"> 객체 구문
  3. <input type="file"> 객체 예제 - 접근
  4. <input type="file"> 객체 예제 - 생성
  5. <input type="file"> 객체 속성
  6. <input type="file"> 객체 예제 - 파일 텍스트 메시지 통일

 

<input type="file"> 객체 정의 - 파일 인풋

 

HTML <input type="file"> 태그(요소) 의미.

 


 

1. 

브라우저마다 표시 문자열 다름. (예)

  • Chrome: 파일선택 선택된 파일 없음
  • Firefox: 찾아보기... 파일이 선택되지 않았습니다.

 

2. 

JS 이용해 모든 브라우저에서 동일하게 보이게 가능. (맨 아래 예제)

(※ 원리: <input type="file"> 요소가 숨어서 작동)

 

 

 

<input type="file"> 객체 구문

 

[접근]

var x = document.getElementById("요소ID");

또는,

var x = document.getElementById("폼요소ID").elements;

 

[생성]

var x = document.createElement("INPUT");

x.setAttribute("type", "file");

 

 

<input type="file"> 객체 예제 - 접근

 

<input type="file" id="hz">


<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var x = document.getElementById("hz");

  x.disabled = true;

}

</script> 

 

결과보기 

 

<input type="file"> 객체 예제 - 생성

 

<button onclick="homzzang()">클릭</button>


<script>

function homzzang() {

  var x = document.createElement("INPUT");

  x.setAttribute("type", "file");

  document.body.appendChild(x);

}

</script> 

 

결과보기 

 

<input type="file"> 객체 속성

 

accept

파일 업로드 버튼의 accept 속성값 설정/반환.

 

autofocus

페이지 로드 시 파일 업로드 버튼이 자동으로 focus 갖을지 여부 설정/반환.

 

defaultValue

파일 업로드 버튼의 기본값 설정/반환.

 

disabled

파일 업로드 버튼의 비활성화 여부 설정/반환.

 

files

파일 업로드 버튼으로 선택한 파일을 나타내는 FileList 객체 반환.

 

form

파일 업로드 버튼이 포함 된 폼에 대한 참조 반환.

 

multiple

파일 업로드 필드에서 사용자가 둘 이상의 파일을 선택할 수 있는지 여부 설정/반환. (※ Ctrl키・Shift키 이용해 여러 파일 동시 선택 가능)

 

name

파일 업로드 버튼의 name 속성값 설정/반환.

 

required

양식을 제출하기 전에 파일 업로드 필드의 파일을 선택해야하는지 여부 설정/반환.

 

type

파일 업로드 버튼이 어떤 형태의 폼 요소인지 반환.

 

value

선택한 파일의 경로 또는 이름 반환. 

 

※ <input type="file"> 객체는 표준 속성/메서드/이벤트 지원.

 

<input type="file"> 객체 예제 - 파일 텍스트 메시지 통일

 

<style>

.display {float:left; height:30px;line-height:30px; box-sizing: content-box;}

.btn_box {position:relative;}

.btn_box .btn  {width:80px; height:30px; line-height:30px; box-sizing: content-box; overflow:hidden;}

.btn_box .hidden {font-size:29px; position:absolute; right:0px; top:0px; opacity:0; filter: alpha(opacity=0); -ms-filter: alpha(opacity=0); cursor:pointer;}

</style>


<input type="text" id="hz" class="display" readonly>

<div class="btn_box">

    <button type="button" class="btn">파일찾기</button>

    <input type="file" name="hz" class="hidden" onchange="javascript: document.getElementById('hz').value = this.value"/>

</div>

 

결과보기

PS. 주의: box-sizing:content-box 속성 추가해야 <input>과 <button> 높이가 동일해짐.

 


분류 제목
DOM_Style JS - animationPlayState 속성 - 애니재생상태 (= 애니작동상태설정 = 움직임 재생/멈춤 …
DOM_Style JS - background 속성 ★ - (배경색/배경이미지) 설정/반환 (= background속성 / 백…
DOM_Style JS - backgroundAttachment 속성 ★ - 배경이미지고정 설정/반환
DOM_Style JS - backgroundColor 속성 ★ - 배경색 설정/반환. (= backgroundColor속성 …
DOM_Style JS - backgroundImage 속성 ★ - 배경이미지 설정/반환 (= backgroundImage속성…
DOM_Style JS - backgroundPosition 속성 - 배경이미지위치 설정/반환
DOM_Style JS - backgroundRepeat 속성 - 배경이미지반복 설정/반환
DOM_Style JS - backgroundClip 속성 - 배경 영역 (= backgroundClip속성 = 백그라운드클립…
DOM_Style JS - backgroundOrigin 속성 - 배경이미지 좌표시작점 설정/반환 (= 백그라운드오리진 속성)
DOM_Style JS - backgroundSize 속성 ★ - 배경이미지크기 설정/반환 (IE9 이상)
DOM_Style JS - backfaceVisibility 속성 - 3D요소 뒷면노출 설정/반환 (IE10 이상)
DOM_Style JS - border 속성 ★ - 테두리스타일 설정/반환 (= 보더속성 = border속성)
DOM_Style JS - borderBottom 속성 - 테두리하단 (= border-bottom속성 = 하단테두리 = 보더…
DOM_Style JS - borderBottomColor 속성 - 테두리하단색깔 (= 보더바텀컬러속성 = border-bot…
DOM_Style JS - borderBottomLeftRadius 속성 - 테두리하단왼쪽모서리둥글게 (= 테두리 하단좌측둥글…
57/89
목록
 홈  PC버전 로그인 일본어
그누앞단언어
그누뒷단언어
그외코딩언어
그누보드
제작의뢰
Q&A
커뮤니티 2
웹유틸
회원센터
홈짱닷컴 PC버전 로그인