2014-11-03 7 views
0

Ext.grid.GheckPanel과 함께 Ext.grid.CheckboxSelectionModel을 사용하여 체크 박스 열이있는 표를 표시하려고합니다. 그러나 행을 클릭 할 때 확인란도 선택됩니다.ext js에서 행 선택시 체크 상자가 선택됨

그리드 행을 선택하는 동안 확인란을 선택하지 않아야합니다. 이를 수행 할 수있는 방법이 있습니까?

다음은 제 코드입니다.

var cboxSelModel =new Ext.grid.CheckboxSelectionModel({ 
       checkOnly : true, 
       width:100, 
       header: defaultVal, 
       id: 'test', 
       locked: true, 
       singleSelect: true, 
       listeners: { 
        rowselect: function (sm, rIndex, keepExisting, record) {    
         uncheckIndex = -1; 
         cIndex =rIndex; 
         updateDefaultValue(); 
        }, 
        rowdeselect: function (sm, rIndex, keepExisting, record) {    
         cIndex = -1; 
         uncheckIndex =rIndex; 
         updateDefaultValue(); 
        } 
       } 
     }); 

grid = new Ext.grid.GridPanel({ 
       id:'grid', 
       width:'99%', 
       border:true, 
       store: store, 
       tbar: toolBar, 
       autoscroll: false, 
       height :'100px', 
       autoHeight :false, 
       sm: cboxSelModel, 
       cm :cm, 
       height:150, 
       layout: 'fit', 
       stateful: true, 
       stateId: 'grid', 
       autoScroll:true, 
       enableColumnResize : false, 
       enableColumnMove : false, 
       viewConfig:{ 
        forceFit:true, 
        scrollOffset:0 
       }, 
       autoFitColumns: true, 
       listeners: { 
        afterrender: function() { 
         setSelectedRows(); 
         var store=grid.getStore(); 
         if(store.data.length > 0){ 
          Ext.getCmp('btnSort').setDisabled(false); 
          Ext.getCmp('btnSort').setIconClass('bmcSort'); 
         } 
        },delay: 1000, 
        cellClick :function(iView, iCellEl, iColIdx, iRecord, iRowEl, iRowIdx, iEvent){ 
          storeindex = iCellEl; 
          var record = grid.store.getAt(iCellEl); 
          var dValue=record.get('displayValue'); 
          var sValue=record.get('storedValue'); 
          var dataArray = getListData(); 
          sValue=dataArray[iCellEl][1]; 
          sValue = Ext.util.Format.htmlDecode(sValue); 
          dValue = Ext.util.Format.htmlDecode(dValue);       
          document.getElementById(InputPageComp.ComponentVars.storedValue).value=sValue; 
          document.getElementById(InputPageComp.ComponentVars.displayValue).value=dValue; 
          document.getElementById('addbtn_id').style['display']= 'none'; 
          document.getElementById('updatebtn_id').style['display']= 'block'; 
          Ext.getCmp('btnRemove').setDisabled(false); 
          Ext.getCmp('btnRemove').setIconClass('bmcDeleteSLT'); 
          grid.getSelectionModel().selectRow(iCellEl); 

         } 

       }   
     }); 
+0

세트'checkOnly : 확인란을 선택 모델에 TRUE '. [docs] (http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.selection.CheckboxModel-cfg-checkOnly)를 참조하십시오. – MMT

+0

나는 이미했으나 작동하지 않습니다. 코드를 확인할 수있다. –

답변

0

var에 SM = Ext.create ('Ext.selection.CheckboxModel', { checkOnly : 사실 });

나는 테스트를 마쳤습니다. 그것은

관련 문제