본문 바로가기
CSS/JavaScript

null이거나 개체가 아닙니다???

by ethanjoh 2009. 11. 4.
요즘 그누보드를 사용해서 사이트를 하나 만들고 있다.
처음엔 XE를 사용하려고 했는데 초보의 입장에서 질의응답이 활성화가 덜 되어 있고, 예전 제로보드에 비해 스킨 등의 개발이 안되어 있는 것 같아 포기했다.

하지만 초창기 XE를 썼을 때와는 많이 달라진 부분이 있었다.
초창기 버전에서는 도대체 어떻게 써야하는 것인지 개념 조차 잘 잡히지 않았고 뜻한대로 잘 만들어지지도 않았는데, XE도 여전히 좀 복잡한 듯 보이긴 하지만 한결 쓰기 편해졌다는 느낌이었고, 커뮤니티 기반의 간단한 사이트 하나는 금방 뚝딱 만들 수 있을 것 같았다.

어쨌거나, 그누보드가 스킨이나 여러 가지 면에서 아직은 활용도가 높은 것 같아 선택을 해서 사용 중인데, 여기 저기 소스를 고쳐가면서 할 수도 있고 타인으 스킨도 어느 정도 커스터마이징이 가능해서 그럭저럭 만족스럽긴 하지만, 웹표준을 잘 따르지 않고 있다는 느낌이 들었다.
그에 비하면 XE는 꽤나 간결하고 구조화가 잘 되어 있다는 느낌이다.

그런데 그누보드에서 자바스크립트를 삽입해 수량을 입력하면 자동으로 금액이 계산되어 나오는 부분을 삽입했는데, 계속해서 "null 이거나 개체가 아닙니다" 라는 자바스크립트 에러가 떠서 반나절을 매달렸다.

검색을 해보니 폼이름이 동일하거나 또는 개체의 이름이 동일한 경우에 그런 에러가 발생한다는데 소스를 아무리 뒤져봐도 모두 유일한 이름이었다.

허참 기가 막힐 노릇이네.

그러다 보니

<form name="form1">
.............
    <form name="form2">
     ........
    </form>
............
</form>

실상의 위와 같이 폼 안에 또 폼을 삽입해서 발생하는 에러였다.
그누보드의 특성 상 소스 파일들이 여러 개로 분리가 되어 있고, include해서 사용하는 식이다 보니 전체 소스를 잘 파악하지 못해서 벌어진 일이었다.

결국 중첩되어 있던 form2를 삭제해 버리고 form1.name.value 이런 식으로 처리를 하니 해결이 되었다는...

초보는 괴로워...