• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

input태그에 readOnly 속성이 적용되어 있는데 onChange가 되는 이유가 무엇인가요?

24.03.17 04:57 작성 24.03.17 05:06 수정 조회수 129

0

 8.5에서 업데이트 기능 구현 전, 오류를 없애기 위해서 readonly 속성을 적용시켰었는데, readonly를 지우지 않고도 onChange가 동작해서 여쭤봅니다.

onchange가 값이 변경될 때 실행되는 걸로 알고 있는데, readonly인데 값이 변경될 수 있나요?

 

8.6) Update 입니다.

답변 1

답변을 작성해보세요.

0

안녕하세요 이정환입니다.

우선 친절한 질문 감사합니다 !

우선 input type="check" 태그에 적용한 readonly 속성은 브라우저의 동작 중 체크박스를 풀고 해제하는 행위를 방지하는 속성입니다. 따라서 readonly를 적용해 놓으면 브라우저 기본 동작으로는 체크박스를 켜거나 끌 수 없게 됩니다.

그러나 우리는 React 컴포넌트 내부에서 체크박스의 checked 값을 State를 이용해 직접 변경하고 있습니다. 따라서 readonly 여부와 관계 없이 checked 값을 아예 변경해버리기 때문에 체크를 켜고 끌 수 있게 되는 것 입니다.

감사합니다