포럼
위젯 생성과 수정을 좀더 간편하게 하고 싶어서 질문합니다.
2012.01.13 06:57
안녕하세요.
질문답변 게시판에 송동우님께 도움을 요청을 했는데,
이곳에 올리면 좀더 빠른 답변을 얻을 수 있을것 같아서 도움을 요청합니다.
페이지에서 위젯 생성이나 수정할때 뜨는 윈도우에서요.
좀더 쉽고 간편하게 위젯 옵션등을 수정하고 생성되도록 하고 싶은데요.
예를 들어 모듈 검색하는 옵션이
현재는 6번정도 클릭을 해서 모듈(게시판)을 선택하는데요.
이걸 2번정도로 줄이려고요.
modules > widget > tpl > widget_generate_code.include.html 의 내용을 수정하고 있는데요.
아래와 같이 하면 등록된 모듈은 모두 출력이 되서. 코드 생성까지는 잘 되는데요.
다시 수정하려면, 이전에 등록된 모듈번호가 자동으로 선택되어 있어야 하는데 그렇지 않아서요.
<select id="moduleList" class="moduleIdList" multiple="multiple" name="{$id}">
<!--@foreach($mid_list as $modules)-->
<!--@foreach($modules->list as $key => $val)-->
<option value="{$val->module_srl}">{$val->browser_title}</option>
<!--@end-->
<!--@end-->
</select>
모듈 번호를 자동으로 선택되게 하려면 어떻게 해야하는지요?
이전에 등록된 위젯 변수값의 모듈 번호을 어떻게 가져와서 셀렉트 시키는지 모르겠어요.
사용되는 변수명이라도 알면 해결을 할수 있을것 같은데...
$widget_info 변수인줄 알았는데 이 변수는 아니고요.
이 부분만 해결되면 다른 항목들도 제가 원하는대로 다 수정할 수 있을것 같은데.
여기서 해결이 안되네요.
답변 부탁드립니다.
감사합니다.
댓글 4
-
무한탐구
2012.01.13 14:45
-
배워서남준다
2012.01.13 15:01
답변 감사합니다.
알려주신 클래스를 봤는데요.
그 클래스를 어떻게 사용하는지 잘 몰라서요~ ^^
this.$moduleNameObj = $keyObj.parent().find('.moduleList');
this.$moduleSrlObj = $keyObj.parent().find('.moduleIdList');
this.$selectedObj = $keyObj.parent().find('.modulelist_selected');
위와같이 모듈은 3개의 셀릭트 폼을 사용하는데요.
이전에 설정된 값은 마지막 modulelist_selected 셀렉트에 들어가게 되어 있는것 같아요.
modulelist_selected 셀렉트에 등록되는 값을
처음 모듈목록 리스트인 moduleIdList 셀렉트로 값이 들어가도록 해야하는데 그것이 안되서요.
셀렉트 폼을 3개를 사용하다보니 그만큼 클릭도 6번씩이나 하는데요.
나름대로 필요한 과정이겠지만, 한꺼번에 모듈 목록을 출력시켜서
2번 클릭으로 모듈 선택하게 하고 싶어서요.
그 클래스에서 어떻게 저장된 값을 가져오는지 모르겠어요~
혼자 계속 공부하곤 있는데 어렵네요~~
공부해서 남주는것이 쉽지 않네요~~ ㅎㅎㅎ
감사합니다.
-
무한탐구
2012.01.13 15:03
저야말로 감사합니다 ~ 올려주신 자료 잘 쓰고 있어요.
-
배워서남준다
2012.01.13 18:38
모듈 선택할때 사용하려는 jquery 다중셀렉트가 값을 읽어들이지 못하는 문제도 있었네요.
어찌어찌 하다보니 실타래가 풀리긴 풀리네요.ㅎㅎ
그래도 아직 넘어야 할 산이 보이네요. ㅜ.ㅜ
1.5 버전의 widget_generate_code.include.html 파일에는
block cond 등의 XE의 새로운 문법으로 코딩되어있네요.
120줄에
이부분인것 같은데...
module_list.js 를 보면
xe.ModuleListManager 라는 클래스가 있네요.