! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

Javascript SetCellData > Q&A | 토론

본문 바로가기

기타 Javascript SetCellData

페이지 정보

작성자 김끄으으비 작성일 2023-08-08 11:00 조회 332회 댓글 0건
제품 버전 : 자바스크립트 라이브러리

본문


안녕하세요 위즈모 데이터 셋팅 관련하여 질문 드립니다, 해당 할인율을 입력 후 체크박스를 풀면 0 % 지로 돌아가게 만들었는데, 안에 있는 데이터는 0%이지만 화면에 보여지는 부분은 100%로 표출되고 항상 다른 헤더를 클릭해야지만 0% 가고 있습니다. 이와 관련하여 어떠한 부분을 고쳐야 하는지 가르쳐 주시면 감사하겠습니다.


grid.hostElement.addEventListener('click', function(e) {
                console.log('onClick');
                var discountColumn = grid.getColumn('discountPer');
                var ht = grid.hitTest(e.pageX, e.pageY);
                var col = ht.col;
                var row = ht.row;
                grid._focus = false;
                console.log(ht.panel);
                console.log(ht.col);
                console.log(ht.row);
                var rowdata = ht.panel.rows[row]._data;
                console.log(ht.panel.rows[row]._data);
                console.log(e.target.type);
                console.log(123,e.target.chekced);
                console.log(456,e.target.unchekced);
                if(rowdata != null){
                    if(rowdata.ProductCode ==''){
                        var item = [];
                    }
                }
                if (ht.panel === grid.cells && e.target.type === undefined) {
                var item =[];
                item.push(ht.panel.rows[row].dataItem);
                  console.log("Wijmo item :: " + JSON.stringify(item));
                }
               
                if(e.target.type =='button'){
                    rowIndexforRemove = row;
                    requestQty = ht.panel.rows[row].dataItem.itemCount;
                    const mapRow = {
                        'rowIndexforRemove': rowIndexforRemove,
                        'requestQty': requestQty
                      };                    
                    LCC.sendMessage({'type':'getRowIndex', mapRow});
                }
                if (e.target.type === 'checkbox') {
                    var selected = grid.selectedRows;
                    console.log('selecteselectedd',selected);
                    var updatedRowItem = [];                   
                    if(rowdata.checkDiscount && (ht.col == '9')){                      
                        if(rowdata.freeSupplyYN == "Y"){
                            freeSupply = true;                        
                        }
                        discountColumn.visible=true;
                        // selected.dataItem.discountPer=100+'%';
                        // selected.dataItem.checkDiscount = true;
                        grid.rows.forEach(rows => {
                            //rows._data.checkDiscount = true;
                            //rows._data.discountPer = 100+'%';                            
                            rows.dataItem.checkDiscount = true;                                                        
                        });                                                 
                        checkedDiscountList.push(item);
                    }else if(!rowdata.checkDiscount && (ht.col == '9')){                       
                        selected.forEach(rows => {
                            rows._data.checkDiscount = false;
                            rows._data.discountPer = 0+'%';                                                                                                        
                        });
                        checkedDiscountList.shift();                       
                    }
                    grid.rows.forEach(rows => {
                        if(rows.dataItem.checkDiscount){                                                      
                            updatedRowItem.push(rows.dataItem);                            
                        }                        
                     });    
                     
                    LCC.sendMessage({'type':'updateDiscountRate', updatedRowItem});
 
                }
                console.log('checkedDiscountList.length'+ JSON.stringify(updatedRowItem));               

                LCC.sendMessage({'type':'onclick', item});
            });
  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

1 답변

기타 Re: Javascript SetCellData

추천0 이 글을 추천하셨습니다 비추천0 채택채택

페이지 정보

작성자 GCK루시 작성일 2023-08-09 14:35 댓글 0건

본문

안녕하세요 그레이프시티입니다.


문의하신 내용과 관련하여 클릭 이벤트 발생 시, setCellData를 호출하여 값을 적용시키기 바랍니다. 또는 formatItem을 이용하여 그리드의 조건부 값이 적용될 수 있도록 설정할 수 있습니다. 


더불어 _가 붙은 FlexGrid 속성의 경우 내부 로직을 위한 속성이므로 API 문서에 표기된 속성을 이용하는 것을 추천드립니다.



- FlexGrid Class API 문서

- 조건부 스타일 지정 데모


관련 API 문서 및 데모를 공유드리며 다른 궁금한 점이 생기면 문의주시기 바랍니다.


감사합니다.

그레이프시티 드림 

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.