【问题标题】:jTable disable sort on specific columnjTable禁用特定列的排序
【发布时间】:2015-06-02 09:42:30
【问题描述】:

我正在使用 jTable 插件在 MVC 应用程序中显示数据。我已经设置了如下表格。

$(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 个字段中上传了文件。它显示记录中上传的文件的下载网址。

所以我不希望仅在 1 个字段 DownloadUrls 上启用排序。其他字段需要排序

我见过 Disable Column Header sorting on a JTable ,但我使用的是 .NET 和 jQuery 而不是 Java 和 Swing,所以一切都只在脚本中管理。

【问题讨论】:

    标签: jquery asp.net-mvc jquery-jtable


    【解决方案1】:

    使用sorting 选项禁用对特定列的排序。请参阅文档here。

    还有一个实际演示 here - 请查看“记录日期”列及其代码。

    DownloadUrls: {
        ...
        sorting: false
    }
    

    【讨论】:

      【解决方案2】:

      在DownloadUrls数组中请添加

      sorting: false //This column is not sortable!
      

      它可能会解决您的需求。

      谢谢。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-06-17
        • 2018-09-07
        • 1970-01-01
        • 2015-11-07
        • 2017-10-25
        • 2022-10-26
        • 2014-08-29
        相关资源
        最近更新 更多