728x90
반응형
Uncaught (in promise) Error: Syntax error, unrecognized expression: ul#[object Object]
원인:
jQuery 선택자($(), .find(), 등)에 객체(Object)를 문자열처럼 전달했기 때문에 발생한 오류입니다.
즉, 다음과 같은 코드가 의심됩니다:
$('ul#' + someObject)
someObject가 문자열이 아니라 JavaScript 객체라면,
위 코드는 ul#[object Object]처럼 잘못된 선택자를 만들어 오류가 발생합니다.
해결 방법:
someObject가 실제로 ID 값 또는 문자열인지 확인하고, 객체라면 ID 값만 추출하도록 수정해야 합니다.
// 수정 방법 1: ID만 추출해서 사용
const selector = 'ul#' + someObject.id; // 또는 someObject['id']
$(selector);
// 수정 방법 2: 객체를 문자열로 변환하지 않도록 방지
if (typeof someObject === 'string') {
$('ul#' + someObject);
}
또는 console.log(someObject)로 실제 값이 무엇인지 확인해 보시고, ID 혹은 원하는 문자열 속성을 명확히 지정해야 합니다.
someObject 가
evt 객체가 넘어와서 그런것이였다.
클릭이벤트에서 화살표 함수 쓰지않고, 함수명만 작성하면 자동으로 event 객체가 넘어가서..
728x90
반응형