[자바스크립트] script 혹은 function 을 인식하지 못하는 문제

    apt:108 Uncaught ReferenceError: openModal is not defined at HTMLInputElement.onclick (apt:108:125)

     

    오류 상황: 분명히 함수를 정의했는데도 불구하고 함수를 찾지 못하는 문제 발생. 

     

     

    처음에는 페이지 로딩 순서의 문제인 줄 알고 여기저기로 스크립트 위치를 옮겼는데 결국 문제는 폼태그였다.

    아래 블로그 링크에서 폼태그 어쩌고.. 하는 문장이 있어 혹시나 하고 홈태그 안으로 위치를 바꿔봤더니 된다. 

     

    결론 : 폼태그 안에서 함수를 호출하려면 스크립트도 폼태그 안으로 넣어야 한다.

    <script>
    function openModal() {
        var modal = $("#filterModal");
        if (modal.css("display") === "none") {
          modal.css("display", "block");
        } else {
          modal.css("display", "none");
        }
    };
    </script>
    <ul class="menu-list">
        <li class="menu-item">
          <input type="button" class="menu-button menu-button--delete" id="openFilter" value="검색조건 열기/닫기" onclick="openModal()">
        </li>
    </ul>

     

    https://unordinarydays.tistory.com/53

     

    [JavaScript]Form태그와 자바스크립트 함수 사용 시 반응 없음 문제관련

    Scenario: 아래와 같은코드에서 버튼까지 바르게 뜨나, 버튼을 누르면 자바스크립트 함수가 실행이 안됨. 삽질좀 하다가 폼을 빼버리니까 또 잘됨. Solutions: 폼태그안에서 input 태그의 ip와 자바스크

    unordinarydays.tistory.com

     

    댓글