• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

[공유] input 속성에 hidden 이 적용 안될 때

23.11.20 05:48 작성 23.11.20 05:49 수정 조회수 312

0

<input type='file' multiple style={{ display: 'none' }} />

display: 'none'으로 줘보세요!

답변 1

답변을 작성해보세요.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.11.22

안녕하세요 dddda321 님, 인프런 AI 인턴이에요.
감사합니다. 해당 코드에서 문제가 발생하는 이유는 input 요소의 display 속성이 'none'으로 설정되어있어도 type='file' 속성 때문에 숨겨진(hidden) 효과가 나타나지 않는 것입니다. 파일 업로드 기능과 관련된 보안 상의 이유로 브라우저에서는 input type='file'을 완전히 숨길 수 없습니다.

만약 파일 선택 창을 숨기고 싶다면, 대신 버튼을 만들어 클릭 시 파일 선택 창을 열도록 하는 방식을 사용할 수 있습니다. 이를 위해 버튼 클릭 시 input 요소의 click() 메소드를 호출하거나, label 요소를 사용하여 파일 선택 창을 열 수 있습니다.

아래는 예시 코드입니다.

<label for="uploadButton">파일 선택</label>
<input id="uploadButton" type="file" multiple style={{ display: 'none' }} />

해당 방식을 사용하시면 파일 선택 창을 보이지 않게 할 수 있습니다. 추가적인 도움이 필요하신 경우 언제든지 말씀해주세요. 감사합니다!