将所选表的行(javascript DataTables)传输到服务器

时间:2016-03-25 17:17:10

标签: javascript jquery datatable

这是关于javascript小部件DataTables。可以找到一个示例here

抱歉,我不是javascript专家。如何将所选行(实际上是我的服务器中的对象)以json-format的形式传送回服务器?

我确实尝试用这种方法来做,但它不起作用:

$('#save_btn').click( function () {
        //table.row('.selected').remove().draw( false );
        console.log ( table.rows('.selected').data());
 
 
        var stringData = table.rows('.selected').data().serialize();
        $.ajax({
            url: '${pageContext.request.contextPath}/ajax/storeSelectedContacts',
            data: stringData ,
            type: "POST",
            cache: false,
            success: function (savingStatus) {
               alert("success");
            },
            error: function (xhr, ajaxOptions, thrownError) {
                alert("error")
            }
        });
 
    } );

非常感谢

1 个答案:

答案 0 :(得分:0)

首先,它返回对象数组。

var stringData = table.rows('.selected').data();

其次,将数组转换为JSON ...

var aData = table.rows('.selected').data();
var sData = JSON.stringify(aData)

并且对于发送到服务器,您可以指示它是JSON dataType: 'json'

$.ajax({
        url: '${pageContext.request.contextPath}/ajax/storeSelectedContacts',
        data: sData ,
        type: "POST",
        cache: false,
        dataType: 'json',
        success: function (savingStatus) {
           alert("success");
        },
        error: function (xhr, ajaxOptions, thrownError) {
            alert("error")
        }
    });

} );