繁体   English   中英

行复选框在 jQuery 数据表中不起作用

[英]Row check box is not working in jQuery datatable

我正在使用带有复选框列的 jQuery 数据表,用于在按钮单击事件中选择选中的行值。 请看我下面的图片。

在此处输入图片说明

我使用此代码获取检查行

        var checkedRows = dtTable._('tr.checked', { "filter": "applied" });

我的问题是当我单击标题行复选框时它工作正常。 但它显示为空

在单行复选框中单击。 我一窍不通。

编辑

萤火虫

在此处输入图片说明

查询

var dtTable = null;
var ajaxUrl = "";

$(document).ready(function () {

    GetCustomerAcceptence();

    $("#btnReceived").click(function () {

        var checkedRows = dtTable._('tr.checked', { "filter": "applied" });

        if (checkedRows == null) {
            alert("checkedRows is null.");
        }
        else {
            alert("checkedRows is not null. Value : " + checkedRows[0][1]);
        }
    });

    function GetCustomerAcceptence() {

        /* Clear datatable before reload. */

        ClearDataTable();

        var elementName = "";

        ajaxUrl = "";

        elementName = "#tblCustomerAcceptence";

        ajaxUrl = '@Url.Action("GetCustomerAcceptenceOrders", "Dispatch")';

        dtTable = $(elementName).dataTable({
            bProcessing: false,
            bLengthChange: false,
            bInfo: false,
            bFilter: false,
            bPaginate: false,
            sAjaxSource: ajaxUrl,
            aoColumns: [
                 {
                     "sClass": "checkbox-column",
                     bSortable: false,
                     "mRender": function (data, type, full) {
                         return '<input type="checkbox" onclick="check(this)" class="icheck-input">';
                     }
                 },
                 { sTitle: "Id", bSortable: false, bVisible: false },
                 { sTitle: "Number", bSortable: false, },
                 { sTitle: "Description", bFilterable: true, bSortable: false, },
                 { sTitle: "PoBox Number", bSortable: false, },
                 { sTitle: "Owner", bSortable: false, },
                 { sTitle: "Physical Weight", bSortable: false, },
                 { sTitle: "Vol.Weight", bSortable: false, },
                 { sTitle: "Last Status", bSortable: false, },
                 { sTitle: "Zone", bSortable: false, },
            ],
            "fnServerParams": function (aoData) {
                aoData.push(
                                { "name": "MasterAWB", "value": "0" },
                                { "name": "PoboxNumber", "value": "0" },
                                { "name": "TypeofGoods", "value": 0 },
                                { "name": "Provider", "value": 0 },
                                { "name": "DateFrom", "value": "0" },
                                { "name": "DateTo", "value": "0" },
                                { "name": "Zone", "value": 0 },
                                { "name": "BagNumber", "value": "0" }
                );
            },
        });
    }

    function ClearDataTable() {

        if (dtTable != null) {
            dtTable.dataTable().fnClearTable();
            dtTable.dataTable().fnDestroy();
        }

    }
});

非常抱歉,复选框列有错误。 我需要在我的网页中放置检查功能以触发复选框选中事件。

/* checkbox in table */

function check(e) {
    if ($(e).parent('td').parent('tr').hasClass('checked')) {
        $(e).parent('td').parent('tr').parent('tbody').parent('table').children('thead').find('th:first').children('div').removeClass('checked');
        $(e).parent('td').parent('tr').removeClass('checked');
    }
    else {
        $(e).parent('td').parent('tr').addClass('checked');
        dtTable.fnDraw();
    }
}

/* end */

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM