• 고객센터
  • 교육
  • 매뉴얼
  • 데모
  • 제품소개
조회 수 : 1668
2009.10.26 (18:37:00)
게시판을 이용해 주셔서 감사합니다.
다음양식에 맞게 입력해주세요.

* 고객시스템명 : LIG NEX1
* 문의할 Component명 및 버전 : 4.0
* DataSet 버전 :
* Tr 버전 :
* 문의 유형(질문/요청/참조) : 질문
* 내용 :
현재 화면에 <통화코드, 구분> 두 개의 콤보 박스를 사용하고 있습니다.
구분에서 특정 값을 선택하면 통화코드에서 선택할 수 있는 항목을 동적으로 제어하기위해 구분 콤보박스에 OnSelChange 이벤트를 잡고 통화코드 콤보를 구성하는 데이터셋에 OnFilter 이벤트를 발생시키도록 구현하였습니다. 구분 콤보박스의 선택값이 바뀌면 이벤트가 발생하고 있구요. 제대로 동작을 하고 있습니다. 구현된 OnFilter 부분은 아래와 같습니다.
<script language=JavaScript for=ds_currencyCode event=OnFilter(row)>

        var purchaseType = ds_purchaseType.NameValue(ds_purchaseType.RowPosition, "Code");
        var currencyCode = ds_currencyCode.NameValue(row, "Code");
        
        // 구입부품비이면 KRW 만 선택 가능, 수입부품비이면 KRW 는 선택 불가
        if ( purchaseType == "D" ) {
                if (currencyCode == "" || currencyCode == "KRW") {
                        alert(purchaseType + " : " + currencyCode + " : T");
                        return true;
                } else {
                        alert(purchaseType + " : " + currencyCode + " : F");                
                        return false;        
                }
        } else if ( purchaseType == "I" ) {
                if ( currencyCode != "KRW" ) {
                        alert(purchaseType + " : " + currencyCode + " : T");                
                        return true;
                } else {
                        alert(purchaseType + " : " + currencyCode + " : F");                
                        return false;        
                }
        }

</script>

문제는 선택된 통화코드의 값을 변경하지 않은 상태에서 구분 값을 변경했을경우 filter 가 잘동작하지만 통화코드의 값을 변경하고 구분을 선택했을 경우 분명히 OnFilter 이벤트를 탔음에도 불구하고 통화코드의 콤보박스는 이전에 필터링된 데이터가 그대로 남아있습니다. 이 때 통화코드를 변경하지 않고 다시 구분 콤보의 값을 바꾸면 잘동작하구요. 무슨 이유인지를 모르겠네요;
 
Tag List
XE Login