如何将DataTables检查的ID传递给控制器

时间:2018-11-28 14:34:39

标签: java ajax datatable datatables controller

我正在做一些练习以对数据库和Spring Boot充满信心

我应该编写一个与Db进行通信并管理多对多关系的Web应用程序。

当我将所有Employee信息传递给控制器​​并向数据库进行正确查询时,我得到了一个Signup页面,其中包含Employee的输入和一个包含所有技术的数据表。 问题是我无法将已检查技术的ID传递到DataTable中并传递给控制器​​。

这是我的Ajax代码:

$(document).ready(function () {
    var table = $('#tec').DataTable({
        'processing': true,
        'serverSide': true,
        rowId: 'id',
        searching: false,
        paging: false,
        info: false,
        columnDefs: [{
            orderable: false,
            className: 'select-checkbox',
            targets: 0
        }],
        "sAjaxSource": "http://localhost:8080/api/control/tecnologie",
        "sAjaxDataProp": "",
        "aoColumns": [
            {
                "mData": null, render: function () {
                    return "<input type='checkbox'/>";
                }
            },
            {"mData": "id"},
            {"mData": "nome"}
        ],
        select: {
            style: 'multi',
            selector: 'td:first-child'
        },
        order: [[1, 'asc']],
        fnInitComplete: function () {
            if (table.data().count() < 1) {
                $(this).parent().hide();
                $(".sideDiv").removeClass("sideDiv");
            }
        }
    });
    $('#loginform').on('submit', function () {
        var form = this;
        var rows_selected = table.column(0).checkboxes.selected();
        // Iterate over all selected checkboxes
        $.each(rows_selected, function (index, rowId) {
            // Create a hidden element

            // var prev = $('#idselected').val();
            // $('#idselected').val(prev + "," + rowId);

            $(form).append(
                $('<input>')
                    .attr('type', 'hidden')
                    .attr('name', 'idselected')
                    .attr('idloginform', 'idselected')
                    .val(rowId)

在表单中,我有一个空的隐藏输入,应使用选中的ID填充。 您能帮我找到解决这个问题的方法吗?

0 个答案:

没有答案