상단 타이틀 클릭하면 정렬되는데요.

막고싶은 경우.

 

 




var gridView;
var dataProvider;
 
$(document).ready( function(){




    RealGridJS.setRootContext("/scripts/");
    
    dataProvider = new RealGridJS.LocalDataProvider();
    gridView = new RealGridJS.GridView("realgrid");


gridView.setSortingOptions({
    enabled: false,
    style: "exclusive" 
});    
});     
  







 

 

Posted by 혜화초보
,

[realGrid] 기타

[.js][software] 2018. 9. 14. 11:20

 

 

 

 

http://help.realgrid.com/search/

Posted by 혜화초보
,


뷰포트를 이용해야 하는듯.

그리드를 처음에 만들어서 뷰포트에 넣어서 나오게 만들고

버튼을 클릭하면 뷰포트에서 지운다음 그리드를 다시 만들어서

뷰포트에 넣는 구조.



 




<html>
<head>
</head>
<link rel="stylesheet" type="text/css" charset="UTF-8" href="./theme-gray-all.css" />


<style type="text/css">
</style>
<script type="text/javascript" charset="UTF-8" src="./ext-all.js"></script>
<body>


<script language='javascript' >
var val_click;


Ext.onReady(function(){


  columns = [
          {
              text: 'Name',
              width: 100,
              sortable: false,
              hideable: false,
              dataIndex: 'name'
          },
          {
              text: 'Email Address',
              width: 150,
              dataIndex: 'email',
              hidden: false
          },
          {
              text: 'Phone Number',
              flex: 1,
              dataIndex: 'phone' ,          
              editable: true
          } 
  ];


  Ext.define('User', {
      extend: 'Ext.data.Model',
      fields: columns
  });


  var userStore = Ext.create('Ext.data.Store', {
      model: 'User',
      data: [
         { name: 'Lisa', email: 'lisa@simpsons.com', phone: '100' , age: '50' },
         { name: 'Bart', email: 'bart@simpsons.com', phone: '110' , age: '20'},
         { name: 'Homer', email: 'homer@simpsons.com', phone: '31', age: '10' },
         { name: 'Marge', email: 'marge@simpsons.com', phone: '95', age: '30' }
      ]
  });


  gridConfig = {
      store: userStore,
      width: 400,
      height: 200,
      title: 'Application Users',
      editable : true,   
      columns :  Ext.Array.clone( columns )      
  };


  grid01 = Ext.create('Ext.grid.Panel',   gridConfig  ); 
  
  button1 = Ext.create('Ext.Button', {
      text: 'Click me',
      handler: function() {
     viewport.remove(grid01, true);      
     columns.push( 
          {
              text: 'age',
              flex: 1,
              dataIndex: 'age' ,
              editable: true
          }      
     );
     
     gridConfig.columns = columns;
     grid01 = Ext.create('Ext.grid.Panel',   gridConfig  ); 
     viewport.add(grid01);
      }
  });  


  var viewport = Ext.create('Ext.container.Viewport', {
      layout: 'border',
      items: [ 
        grid01
        , 
        button1
      ]
  });  


});




</script>
</body>
</html>











 

Posted by 혜화초보
,

/* 특정 컬럼에 퍼센테이지 바 넣기 */

/*  percentage bar */

 

 
<html>
<head>
<style type="text/css">
 <!--
  #base1 {
  background-color: #D42121;
  height: 12px;
  position:relative;
  top: 0px;
  }
 
 //-->
 </style>
</head>
<link rel="stylesheet" type="text/css" media="screen" href="./jqueryUi/jquery-ui.css" />
<link rel="stylesheet" type="text/css" media="screen" href="./jqGrid/css/ui.jqgrid.css" />  
<style type="text/css">
</style>
<script src="./jqGrid/js/jquery-3.2.1.min.js"></script>
<script src="./jqueryUi/jquery-ui.js"></script>
<script src="./jqGrid/js/jquery.jqGrid.min.js"></script>
<script language='javascript' >


var value1 = '';


 $(function(){
     var gridData = [
        {seq:"1",date1:"2017/09/01",name1:"Homer",name2:"note",name3:"100",hitnum:"100"},
        {seq:"2",date1:"2017/09/01",name1:"Homer",name2:"note",name3:"70",hitnum:"100"},
        {seq:"3",date1:"2017/09/01",name1:"Homer",name2:"note",name3:"30",hitnum:"100"},                
        {seq:"4",date1:"2017/10/02",name1:"Marge",name2:"note2",name3:"80",hitnum:"350"}  ];


     $("#list").jqGrid({
        datatype: "local",
        height: 300,
        width:500,
        sortable: false ,
        shrinkToFit : false,
        colNames:['seq','name1', 'name2', 'name3', 'date','hit'],
        colModel:[
                {name:'seq' , frozen:true , width:100 },
                {name:'name1'  , frozen:true  , width:100 },
                {name:'name2' , width:100 },
                {name:'name3' , width:100 , formatter:abc },                
                {name:'date1' , width:100  },
                {name:'hitnum' , width:100 }
        ],
        caption: " title aa ",
        gridComplete: function() {


            $('#list').on("selectstart", function(event){ return false; });
            $('#list').on("dragstart", function(event){ return false; });
        }
     });


     for(var i=0;i<=gridData.length;i++){
        $("#list").jqGrid('addRowData',i+1,gridData[i]);
     }
     $("#list").jqGrid( 'setFrozenColumns' );


})


function abc(  cellvalue, options, rowObject ){
  return "  <div id='base1' style=' width:"+cellvalue+"%  ' > </div> ";
}


</script>
<body>


<table id="list"></table>


</body>
</html>





 

 

Posted by 혜화초보
,

jqGrid 틀고정

 

 

/*  add  

  1.  frozen:true 

  2.  shrinkToFit : false,

  3.  ("#list").jqGrid( 'setFrozenColumns' );

*/

 

 

 


<html>
<head>
</head>
<link rel="stylesheet" type="text/css" media="screen" href="./jqueryUi/jquery-ui.css" />
<link rel="stylesheet" type="text/css" media="screen" href="./jqGrid/css/ui.jqgrid.css" />  
<style type="text/css">
</style>
<script src="./jqGrid/js/jquery-3.2.1.min.js"></script>
<script src="./jqueryUi/jquery-ui.js"></script>
<script src="./jqGrid/js/jquery.jqGrid.min.js"></script>
<script language='javascript' >
var value1 = '';


 $(function(){
     var gridData = [
        {seq:"1",date1:"2017/09/01",name1:"Homer",name2:"note",name3:"note",hitnum:"100"},
        {seq:"2",date1:"2017/10/02",name1:"Marge",name2:"note2",name3:"note2",hitnum:"350"}  ];


     $("#list").jqGrid({
        datatype: "local",
        height: 300,
        width:500,
        sortable: false ,
        shrinkToFit : false,
        colNames:['seq','name1', 'name2', 'name3', 'date','hit'],
        colModel:[
                {name:'seq' , frozen:true , width:100 },
                {name:'name1'  , frozen:true  , width:100 },
                {name:'name2' , width:100 },
                {name:'name3' , width:100 },                
                {name:'date1' , width:100 },
                {name:'hitnum' , width:100 }
        ],
        caption: " title aa ",
        gridComplete: function() {
            $('#list').on("selectstart", function(event){ return false; });
            $('#list').on("dragstart", function(event){ return false; });
        }
     });


     for(var i=0;i<=gridData.length;i++){
        $("#list").jqGrid('addRowData',i+1,gridData[i]);
     }
     $("#list").jqGrid( 'setFrozenColumns' );


})






</script>
<body>


<table id="list"></table>


</body>
</html>



 

Posted by 혜화초보
,

 

/*  특정 셀 값을 다른 셀로 마우스로 이동 */

/*  마우스다운한 위치의 값을 마우스업한 위치로 이동 */

/*  Move mouse-down to the position where you mouse-up */

/*  Move a specific cell value to another cell */

 

 

 


<html>
<head>
</head>
<link rel="stylesheet" type="text/css" media="screen" href="./jqueryUi/jquery-ui.css" />
<link rel="stylesheet" type="text/css" media="screen" href="./jqGrid/css/ui.jqgrid.css" />  
<style type="text/css">
</style>
<script src="./jqGrid/js/jquery-3.2.1.min.js"></script>
<script src="./jqueryUi/jquery-ui.js"></script>
<script src="./jqGrid/js/jquery.jqGrid.min.js"></script>
<script language='javascript' >
var value1 = '';


 $(function(){
     var gridData = [
        {seq:"1",date1:"2017/09/01",name1:"Homer",name2:"note",hitnum:"100"},
        {seq:"2",date1:"2017/10/02",name1:"Marge",name2:"note2",hitnum:"350"}  ];


     $("#list").jqGrid({
        datatype: "local",
        height: 300,
        colNames:['seq','name1', 'name2', 'date','hit'],
        colModel:[
                {name:'seq'},
                {name:'name1'},
                {name:'name2'},
                {name:'date1'},
                {name:'hitnum'}
        ],
        caption: " title aa ",
        gridComplete: function() {


            $('.jqgrow').mousedown(function(e) {
                var rowId = $(this).attr('id');
              var colModel = jQuery("#list").jqGrid ('getGridParam', 'colModel');
              var name1 = colModel[e.target.cellIndex].name;
                value1 = $('#list').jqGrid('getCell', rowId, name1 );
            });




            $('.jqgrow').mouseup(function(e) {
                var rowId = $(this).attr('id');
              var colModel = jQuery("#list").jqGrid ('getGridParam', 'colModel');
              var name1 = colModel[e.target.cellIndex].name;                
                $("#list").jqGrid('setCell',rowId,  name1 , value1 );
            });    
            
            $('#list').on("selectstart", function(event){ return false; });
            $('#list').on("dragstart", function(event){ return false; });
        }
        
        
     });


     for(var i=0;i<=gridData.length;i++){
        $("#list").jqGrid('addRowData',i+1,gridData[i]);
     }


 
     
})






</script>
<body>


<table id="list"></table>


</body>
</html>





 

 

Posted by 혜화초보
,

 

 



/* 기본 그리드 형태 */

/*  base grid style */


<html>
<head>
</head>
<link rel="stylesheet" type="text/css" media="screen" href="./jqueryUi/jquery-ui.css" />
<link rel="stylesheet" type="text/css" media="screen" href="./jqGrid/css/ui.jqgrid.css" />  
<style type="text/css">
</style>
<script src="./jqGrid/js/jquery-3.2.1.min.js"></script><script src="./jqueryUi/jquery-ui.js"></script>
<script src="./jqGrid/js/jquery.jqGrid.min.js"></script>
<script language='javascript' >




 $(function(){
     var gridData = [
        {seq:"1",date1:"2017/09/01",name1:"Homer",name2:"note",hitnum:"100"},
        {seq:"2",date1:"2017/10/02",name1:"Marge",name2:"note2",hitnum:"350"}  ];


     $("#list").jqGrid({
        datatype: "local",
        height: 300,
        colNames:['seq','name1', 'name2', 'date','hit'],
        colModel:[
                {name:'seq'},
                {name:'name1'},
                {name:'name2'},
                {name:'date1'},
                {name:'hitnum'}    
        ],
        caption: " title aa "
     });
         
     for(var i=0;i<=gridData.length;i++){
        $("#list").jqGrid('addRowData',i+1,gridData[i]);
     }
})






</script>
<body>


<table id="list"></table>


</body>
</html>


 

 

Posted by 혜화초보
,

 

 

 



/*  Mouse down the cell value and put it in the mouse-up cell */
/*
그리드에서 마우스다운한 셀 값 가져다(드레그 해서) 마우스업한 셀에 넣기 */



<html>
<head>
</head>
<link rel="stylesheet" type="text/css" charset="UTF-8" href="./theme-gray-all.css" />


<style type="text/css">
</style>


<script type="text/javascript" charset="UTF-8" src="./ext-all.js"></script>


<body>


<script language='javascript' >


var val_click;


Ext.onReady(function(){


  Ext.define('User', {
      extend: 'Ext.data.Model',
      fields: [ 'name', 'email', 'phone' ]
  });


  var userStore = Ext.create('Ext.data.Store', {
      model: 'User',
      data: [
         { name: 'Lisa', email: 'lisa@simpsons.com', phone: '555-111-1221' },
         { name: 'Bart', email: 'bart@simpsons.com', phone: '555-222-1232' },
         { name: 'Homer', email: 'homer@simpsons.com', phone: '555-222-1243' },
         { name: 'Marge', email: 'marge@simpsons.com', phone: '555-222-1254' }
      ]
  });


  Ext.create('Ext.grid.Panel', {
      renderTo: document.body,
      store: userStore,
      width: 400,
      height: 200,
      title: 'Application Users',
      editable : true, 
      columns: [
          {
              text: 'Name',
              width: 100,
              sortable: false,
              hideable: false,
              dataIndex: 'name'
          },
          {
              text: 'Email Address',
              width: 150,
              dataIndex: 'email',
              hidden: true
          },
          {
              text: 'Phone Number',
              flex: 1,
              dataIndex: 'phone' ,          
              editable: true
          }
      ] ,
      listeners: {
   'cellmousedown': function(iView, iCellEl, iColIdx, iStore, 
                                         iRowEl, iRowIdx, iEvent) {
           var rec = this.getStore().getAt(iRowIdx);
           var val2 = this.columns[iColIdx].dataIndex;
           val_click =  rec.get(  val2  );
           console.log(' value :: ' + val_click );
   },
   'cellmouseup': function(iView, iCellEl, iColIdx, iStore, 
                                      iRowEl, iRowIdx, iEvent) {
           var rec = this.getStore().getAt(iRowIdx);
           var val2 = this.columns[iColIdx].dataIndex;        
            rec.set(  val2  , val_click   );
   }
      }      
  }); 
});




</script>
<title>Simple Grid Sample for ExtJs</title>
</body>
</html>




 

 

Posted by 혜화초보
,
 
extJs  simple  grid  수정가능





<html>
<head>
</head>
<link rel="stylesheet" type="text/css" charset="UTF-8" href="./theme-gray-all.css" />


<style type="text/css">
</style>


<script type="text/javascript" charset="UTF-8" src="./ext-all.js"></script>


<body>


<script language='javascript' >


Ext.onReady(function(){


  Ext.define('User', {
      extend: 'Ext.data.Model',
      fields: [ 'name', 'email', 'phone' ]
  });


  var userStore = Ext.create('Ext.data.Store', {
      model: 'User',
      data: [
         { name: 'Lisa', email: 'lisa@simpsons.com', phone: '555-111-1224' },
         { name: 'Bart', email: 'bart@simpsons.com', phone: '555-222-1234' },
         { name: 'Homer', email: 'homer@simpsons.com', phone: '555-222-1244' },
         { name: 'Marge', email: 'marge@simpsons.com', phone: '555-222-1254' }
      ]
  });    
    
  Ext.create('Ext.grid.Panel', {
      renderTo: document.body,
      store: userStore,
      width: 400,
      height: 200,
      title: 'Application Users',
      editable : true, 
      columns: [
          {
              text: 'Name',
              width: 100,
              sortable: false,
              hideable: false,
              dataIndex: 'name'
          },
          {
              text: 'Email Address',
              width: 150,
              dataIndex: 'email',
              hidden: true
          },
          {
              text: 'Phone Number',
              flex: 1,
              dataIndex: 'phone',
               editor: {
                xtype:'textfield',
                allowBlank:false
              },              
              editable: true
          }
      ],      
      plugins: [
        Ext.create('Ext.grid.plugin.CellEditing', {
            clicksToEdit: 1
        })
      ] 
  }); 
    
});




</script>
<title>Simple Grid Sample for ExtJs</title>
</body>
</html>





 

 

Posted by 혜화초보
,
 
 
 






<html>
<head>
</head>
<link rel="stylesheet" type="text/css" charset="UTF-8" href="./theme-gray-all.css" />


<style type="text/css">
</style>


<script type="text/javascript" charset="UTF-8" src="./ext-all.js"></script>


<body>


<script language='javascript' >


Ext.onReady(function(){


  Ext.define('User', {
      extend: 'Ext.data.Model',
      fields: [ 'name', 'email', 'phone' ]
  });


  var userStore = Ext.create('Ext.data.Store', {
      model: 'User',
      data: [
         { name: 'Lisa', email: 'lisa@simpsons.com', phone: '555-111-1224' },
         { name: 'Bart', email: 'bart@simpsons.com', phone: '555-222-1234' },
         { name: 'Homer', email: 'homer@simpsons.com', phone: '555-222-1244' },
         { name: 'Marge', email: 'marge@simpsons.com', phone: '555-222-1254' }
      ]
  });    
    
  Ext.create('Ext.grid.Panel', {
      renderTo: document.body,
      store: userStore,
      width: 400,
      height: 200,
      title: 'Application Users',
      columns: [
          {
              text: 'Name',
              width: 100,
              sortable: false,
              hideable: false,
              dataIndex: 'name'
          },
          {
              text: 'Email Address',
              width: 150,
              dataIndex: 'email',
              hidden: true
          },
          {
              text: 'Phone Number',
              flex: 1,
              dataIndex: 'phone'
          }
      ]
  }); 
    
});















 

 

 

 

Posted by 혜화초보
,