2015-06-02 4 views
1

Я использую плагин jTable для отображения данных в приложении MVC. Я установил таблицу, как показано ниже.jTable отключить сортировку по определенному столбцу

$(document).ready(function() { 

    $('#StudentTableContainer').jtable({ 
     title: 'The Employee List', 
     paging: true, //Enable paging 
     pageSize: 10, //Set page size (default: 10) 
     sorting: true, //Enable sorting 
     defaultSorting: 'Name ASC', //Set default sorting 
     actions: { 
      listAction: '/Employee/Employees', 
      deleteAction: '/Employee/Delete', 
      updateAction: '/Employee/Edit', 
      createAction: '/Employee/Create' 
     }, 
     fields: { 
      Id: { 
       key: true, 
       create: false, 
       edit: false, 
       list: false 
      }, 
      Name: { 
       title: 'Name', 
       width: '15%' 
      }, 
      Age: { 
       title: 'Age', 
       width: '5%' 
      }, 
      Position: { 
       title: 'Post', 
       options: 'Employee/GetJobPosts', 
       width: '12%' 
      }, 
      DownloadUrls: { 
       title: 'Resume', 
       width: '13%', 
       display: function (data) { 
        if (data.record.DownloadUrls) { 
         var urls = data.record.DownloadUrls.split(','); 
         var html = ''; 
         var li = ''; 
         urls.forEach(function (entry) { 
          li = li + '<li><a href="' + entry + '" target="_blank" runat="server" download>' + entry.split('/').pop() + '</a></li>'; 
         }) 
         html = "<ul>" + li + "</ul>"; 
         return html; 
        } else { 
         return 'Please edit and upload resume'; 
        } 
       }, 
       input: function (data) { 
        return '<input type="file" name="resume" id="resume" multiple/>' 
       } 
      } 
     }, 
     formCreated: function (event, data) { 
      console.log('adding multipart attribute') 
      data.form.attr('enctype', 'multipart/form-data'); 
     } 
    }); 

    //Load student list from server 
    $('#StudentTableContainer').jtable('load'); 
}); 

Где paging: true, позволяет пейджинг для JTable и sorting: true, позволяет сортировки для JTable. Но, как вы можете видеть сценарий выше, я загружаю файл в 1 поле. Он показывает загрузочные URL-адреса для файлов, загруженных в запись.

Поэтому я не хочу, чтобы сортировка включалась только в 1 поле DownloadUrls. Другие поля должны иметь сортировки

Я видел Disable Column Header sorting on a JTable, но я использую .NET и JQuery не Java и свинг, так что все управляется только сценарий.

ответ

3

Отключить сортировку для определенного столбца с помощью опции sorting. См. Документацию here.

Существует также демонстрация его в действии here - взгляните на столбец «Дата записи» и его код.

DownloadUrls: { 
    ... 
    sorting: false 
} 
1

В DownloadUrls массива добавьте

sorting: false //This column is not sortable! 

Это может исправить вашу потребность.

Спасибо.

Смежные вопросы