2015-09-19 10 views
26

मेरे द्वारा बनाए गए ui ग्रिड कि, तीन कॉलम है डिफ़ॉल्ट रूप से से छँटाई मेनू निकालें, स्तंभ शीर्ष लेख एक 'वी' आकार का चिह्न (छवि में लाल घेरे में चिह्नित) हैui ग्रिड स्तंभ शीर्ष लेख

यहाँ

कोड और plunker:

var app = angular.module('app', ['ngTouch', 'ui.grid', 'ui.grid.expandable', 'ui.grid.selection', 'ui.grid.pinning']); 
 

 

 
app.controller('ThirdCtrl', ['$scope', '$http', '$log', function ($scope, $http, $log) { 
 
     $scope.gridOptions = { 
 
     expandableRowTemplate: 'expandableRowTemplate.html', 
 
     expandableRowHeight: 150, 
 
     onRegisterApi: function (gridApi) { 
 
      gridApi.expandable.on.rowExpandedStateChanged($scope, function (row) { 
 
       if (row.isExpanded) { 
 
        row.entity.subGridOptions = { 
 
        columnDefs: [ 
 
        { name: 'name'}, 
 
        { name: 'gender'}, 
 
        { name: 'company'} 
 
        ]}; 
 

 
        $http.get('https://cdn.rawgit.com/angular-ui/ui-grid.info/gh-pages/data/100.json') 
 
        .success(function(data) { 
 
         row.entity.subGridOptions.data = data; 
 
        }); 
 
       } 
 
      }); 
 
     } 
 
     } 
 

 
     $scope.gridOptions.columnDefs = [ 
 
     { name: 'id', pinnedLeft:true }, 
 
     { name: 'name'}, 
 
     { name: 'age'}, 
 
     { name: 'address.city'} 
 
     ]; 
 

 
     $http.get('https://cdn.rawgit.com/angular-ui/ui-grid.info/gh-pages/data/500_complex.json') 
 
     .success(function(data) { 
 
      $scope.gridOptions.data = data; 
 
     }); 
 
    }]);
.grid { 
 
    width: 100%; 
 
    height: 400px; 
 
}
<!doctype html> 
 
<html ng-app="app"> 
 
    <head> 
 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.js"></script> 
 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular-touch.js"></script> 
 
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular-animate.js"></script> 
 
    <script src="http://ui-grid.info/docs/grunt-scripts/csv.js"></script> 
 
    <script src="http://ui-grid.info/docs/grunt-scripts/pdfmake.js"></script> 
 
    <script src="http://ui-grid.info/docs/grunt-scripts/vfs_fonts.js"></script> 
 
    <script src="http://ui-grid.info/release/ui-grid.js"></script> 
 
    <link rel="stylesheet" href="http://ui-grid.info/release/ui-grid.css" type="text/css"> 
 
    <link rel="stylesheet" href="main.css" type="text/css"> 
 
    </head> 
 
    <body> 
 

 

 
<div ng-controller="ThirdCtrl"> 
 
    <div ui-grid="gridOptions" ui-grid-expandable class="grid"></div> 
 
</div> 
 

 

 
    <script src="app.js"></script> 
 
    </body> 
 
</html>

वें उपरोक्त छवि में ई ग्रिड मैंने अपनी परियोजना में बनाया है।

मेरा सवाल यह है कि मैं लाल सर्कल में हेडर पंक्ति में "v" चिह्न को कैसे हटा सकता हूं?

उत्तर

53

क्या आप चाहते हैं:

$scope.gridOptions = { 
    enableColumnMenus: false 
    ... 
} 
+1

यह सही उत्तर नहीं है। Normaly आप अपने columDefs परिभाषित किया है। फिर आपको प्रत्येक columDef के अंदर enableColumsMenus को स्थानांतरित करना होगा। तो नीचे जवाब सही है! –

+7

मुझे नहीं पता कि मैं कहूंगा कि 'यह सही जवाब नहीं है'। ओपी ने पूछा कि सभी शीर्षकों से मेनू ड्रॉप डाउन को कैसे हटाया जाए, और यह उत्तर उस प्रश्न के लिए सही है। दूसरा उत्तर ग्रैन्युलरिटी पर अतिरिक्त जानकारी प्रदान करता है, लेकिन इससे यह जवाब गलत नहीं होता है। – bradimus

5

आप छँटाई निष्क्रिय कर सकते हैं

$scope.gridOptions = { 
      enableSorting: false, 
      .. 
    } 
+0

कोई विचार है कि मैं हेडर पंक्ति में 'v' चिह्न कैसे हटा सकता हूं? – Michael

+1

क्या कोई तरीका है कि मैं कॉलम मेनू में एक विशेष प्रविष्टि को हटा सकता हूं? आइए कहें कि कॉलम पिनिंग सक्षम है, मेरे पास मेनू में पिन बाएं या दाएं होगा। लेकिन मैं कुछ विशिष्ट कॉलम के लिए छिपाना चाहता हूं। इस – BiJ

+0

के लिए कोई कॉन्फ़िगरेशन है किसी कारण से यह मेरे लिए काम करता है, लेकिन सक्षम नहीं है कॉलममेनू अधिक लोकप्रिय उत्तरों की तरह। – cellepo

27

के रूप में क्रिस ने सुझाव दिया आप निम्न कर सभी स्तंभ से इसे हटाने के लिए चाहते हैं:

$scope.gridOptions = { 
     enableColumnMenus: false 
     ... 
    } 

लेकिन यदि आप इसे एक या अधिक से हटाना चाहते हैं लेकिन सभी कॉलमों की आपको आवश्यकता नहीं है

$scope.gridOptions = { 
    columnDefs: [ 
     {      
      enableColumnMenu: false, 
    ... 
} 

ध्यान दें कि सक्षम कॉलममेनस का डिफ़ॉल्ट मान सत्य है।

+0

यह निश्चित रूप से मेरे लिए काम करता है! –

1

मैंने सक्षम सॉर्टिंग निर्दिष्ट करके इसे प्रबंधित किया: प्रासंगिक कॉलम परिभाषा पर गलत, यह दस्तावेज के विपरीत है जो सॉर्ट करने योग्य निर्दिष्ट है: झूठी।

var uiGrid = []; 
var columnsUiGrid = [ 
    { displayName: 'Column A', field: 'model.ColumnA' }, 
    { displayName: 'Column B', field: 'model.ColumnB', enableSorting: false } 
]; 

$scope.uiGridOptions = { 
    enableSorting: true, 
    columnDefs: columnsUiGrid, 
    data: uiGrid 
}; 
संबंधित मुद्दे