Sungtt

querySelector 사용중 오류 Failed to execute 'querySelector' on 'Document' 본문

JavaScript

querySelector 사용중 오류 Failed to execute 'querySelector' on 'Document'

sungtt 2023. 1. 29. 05:21

Failed to execute 'querySelector' on 'Document'

 

랜덤으로 생성되는 클래스명을 바인딩하려던 중에 만난 오류다.

이는 클래스명이 숫자로 시작할 때 오류가 난다고한다.

위 오류 본문을 보면 클래스명이 숫자로 시작함을 알 수 있다.

제일 깔끔한 방법은 숫자로 시작하는 클래스명을 안 쓰는 것이다.

하지만 불가피한 상황일 때는 아래의 방법으로 시도해 보자.

해결방법 -1 

클래스명을 생성 시 맨 앞에 특정 문자열을 추가해 준 뒤 동일하게 요소를 선택하면 된다.

관련 로직이 오류 없이 잘 진행된다.

const first = document.querySelector(`.uid${className}`);

 

해결방법 -2

어트리뷰트 전체를 넘겨주는 방법이다.

잘 보면 클래스를 나타내는 '.'이나 아이디를 나타내는 '#'이 없음을 주의하자. 

const first = document.querySelector("[class='1box']");

 

Comments