diff --git a/frontend/src/shared/ui/components/KsTextField.vue b/frontend/src/shared/ui/components/KsTextField.vue index 3e8216aa..376a9339 100644 --- a/frontend/src/shared/ui/components/KsTextField.vue +++ b/frontend/src/shared/ui/components/KsTextField.vue @@ -84,10 +84,10 @@ const moveToNextInput = () => { } if (!container) container = document.body - // 모든 입력 가능한 요소 찾기 - const selector = 'input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), textarea, select' + // 모든 입력 가능한 요소 찾기 (input, textarea, select, button, role="button") + const selector = 'input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), textarea, select, button, [role="button"]' const inputs = Array.from(container.querySelectorAll(selector)) as HTMLElement[] - const focusable = inputs.filter((el: any) => !el.disabled && !el.readonly && el.offsetParent) + const focusable = inputs.filter((el: any) => !el.disabled && !el.hidden && el.offsetParent && el.tabIndex !== -1) // 현재 요소의 인덱스 찾기 const idx = focusable.indexOf(inputRef.value)