RX/XE 기능개발 내역
의뢰 전에 실제 구현가부가 걱정되시는 경우
또는 XE로 이런게 구현가능한지 의구심이 드는 경우들을 위해
실제로 XE 기반으로 제작한 기능들을 간단히 소개합니다.

단, 기재한 모든 기능들은 전부 의뢰자들의 요청에 의해 제작된 유료자료들입니다.
( 타사이트들처럼 템플렛형태로 다량 판매 자료로 만들어진 자료들이 아닙니다. )

따라서 가격대가 저가는 아님을 미리 알려드립니다. ( 기존 의뢰자와의 형평성을 감안해 비용측정됩니다)
구매 및 제작 원하시면 XE 제작의뢰 게시판에 글을 남겨주시면 됩니다.

앞서 만들었던 테이블을 이용해서

연계 SelectBox 형태를 구현할 수 있는 소스를 만들었다.


예전에, 카테고리 구조도를 이용해 연계 SelectBox 를 구현해본 적은 있는데

이 기능은, exec_xml 등을 쓰지 않고  전부 구조도를 만든 후, 이를 숨겨서 상황에 따라 노출하는 구조였는데

이게 부하가 꽤 걸리는 기능이다.  어쨋든 구현 자체로 만족하고는 있었는데


지금 만든건,  카테고리 구조가 아니라,  별개의 테이블을 이용한 연계 Selectbox 가 된다.


1차 selectbox 를 고르면, 그에 따라 그에 해당하는 2차 selectbox 가 나오고, 

2차 selectbox 를 고르면, 그에 따라 그에 해당 하는 3차 selectbox가 나오고..

이렇게 계속 연계되어 selectbox 가 생성되는 구조이다


db5.gif



흔히,  자동차 사이트나,  학교 구조,  지역구분 등..

상황에 따라 굉장히 필요한 기능이다.


예전의 javascript 소스 기반이 아니고.  (이 소스는 추가하는게 힘이 드는 구조이다.)

DB 테이블 기반 소스이기에...  이 DB 보완을 통해 용이하게 수정/추가 등이 가능하다


이 DB의 칼럼명이 정해져있는게 아니다보니, XE의 xml 들을 하나도 쓸 수 없고

그걸 일일이 $oDB 기준으로 처리할 수 있게 query 를 가변적으로 짜다보니.. 이게 생각보다 훨씬 어려웠다.  ^^;


게다가 소스를 최대한 간략화하고, 가변적으로 쓸 수 있게 만들어서..

어디서든 손쉽게 붙여서 쓸 수 있도록 만들려하다보니 배는 더 어려워진듯..   일단 정말 최대한 줄여는 놨다.

 

소스를 최소화했기에  그때그때 관련 소스 전체를 붙이는 형태가 될듯하다가..

다시 마음을 바꿔 trigger 기반으로해서 문서치환으로 붙게 변경은 했다.

다만 한 사잍에서 여러군데 쓸때를 대비해, 치환 부분을 여러방식으로 어떻게 할지 와 

각각의 설정페이지를 내부에 추가하는 걸 추가작업해야한다.  이건 조금 미룰지도..

(사실 이 trigger 무시하고 그냥 소스를 직접 넣어도 작동한다)


대상도, 현재 제작한 별도 테이블 기준 외에도

카테고리나  메뉴 등 트리구조 기반으로 할 수 있게 추가 작업도 해두면 좋을듯하다

(그런데 이게 함수가 은근히 복잡해서 ㅡㅡ;;)


ps.

innserHTML 은 IE에 대해 selectbox 내부의 option 추가가 안 되는군요

constructor.name 도 작동 안하고 ( 다행히 별도의 object 가 없기에 배열을 object 로 인식시켜 typeof 로 해결이 가능하지만)

결국 IE 를 감안해

.options.add(new Option('name','value'));   형태를 썼는데.. 이렇게 하려니 select 초기화 기능이 또 붙어야한다.

 이를 초기화하는 함수등은 또 없기에, option 길이를 측정해서 null 값을 강제로 넣는 소스가 추가되어야한다.

 

결국 호환성 문제는 해결은 했다만, 참.... 이 놈의 브라우저들이 싫다.

 


전체 7건
카테고리
XE Login