Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
试图弄清楚如何将对象从表datatable插件发送到我的Java Servlet_Java_Javascript_Post_Datatables_Jeditable - Fatal编程技术网

试图弄清楚如何将对象从表datatable插件发送到我的Java Servlet

试图弄清楚如何将对象从表datatable插件发送到我的Java Servlet,java,javascript,post,datatables,jeditable,Java,Javascript,Post,Datatables,Jeditable,我已经创建了一个Datatable,我正在使用jeditable插件编辑单元格以返回数据。我可以编辑单元格,但当我点击enter键并将其发送回我的URL Rest端点(我只有一个System.out.println来查看数据)时,我从firebug得到了这个错误 columnId 3 columnName daily columnPosition 2 id 24 rowId 0 value 50 “网络错误:415不支持的媒体类型-我的rest端点url” 我的端点需要JS

我已经创建了一个Datatable,我正在使用jeditable插件编辑单元格以返回数据。我可以编辑单元格,但当我点击enter键并将其发送回我的URL Rest端点(我只有一个System.out.println来查看数据)时,我从firebug得到了这个错误

columnId    3
columnName  daily
columnPosition  2
id  24
rowId   0
value   50
“网络错误:415不支持的媒体类型-我的rest端点url

我的端点需要JSON中的对象,而我的表只发送一些字符串参数。所以我需要把它包起来。 让我发布我的datatable初始化和jeditable init

var computerTable = $("#table_computerTable ").dataTable({
           "bProcessing": true,
           "bServerSide": true,
           "bInfo":false,
           "bAutoWidth":false,
           "bScrollInfinite":true,
           "sAjaxSource": ApiUrl(),
           "aoColumns":[       // Maps <th> elements in html to JSON data
               {"mData": "id"},
               {"mData": "description","sClass" : "read_only"},
               {"mData": "serial"},
               {"mData": "daily"}
             ],
           "aoColumnDefs":[
               {"sName":"id","bVisible":false, "aTargets": [0]},
               {"sWidth": "55%","aTargets": [1]},
               {"sName":"serial","bVisible":false, "aTargets": [2]},
               {"sName":"daily","aTargets":[3]}
             ],
            "fnServerData": function ( sSource, aoData, fnCallback ) {
                   $.getJSON( sSource, aoData, function (json) { 
                       map = {};
                       map["aaData"] = json;
                       fnCallback(map);
                   });
            },
            "fnRowCallback": function(nRow, aData, iDisplayIndex ){
                $(nRow).attr("id",aData["id"]); // Change row ID attribute to match database row id
                return nRow;
            }
        }).makeEditable({
            sUpdateURL: getApiUrl() + "cpu/save",
            sReadOnlyCellClass: "read_only",
            ajaxoptions:{
                dataType: "json",
                type: 'POST'
            }
        });
我想做的是初始化一个对象并发回我想要的所有数据。ID/串行/每小时(新值)

我对jquery、javascript了解不够,不知道从哪里开始修改


有什么建议吗?

编辑您的makeEditable,如下所示:

makeEditable(
{
  sUpdateURL: function(value, settings)
  {
    var sentObject = {}
    var rowId = oTable.fnGetPosition(this)[0];
    var columnPosition = oTable.fnGetPosition(this)[1];
    var columnId = oTable.fnGetPosition(this)[2];
    var sColumnTitle = oTable.fnSettings().aoColumns[columnId].sTitle; 
    sentObject["rowid"]= rowId
    sentObject["columnpos"]= columnPosition
    sentObject["columnId"]= columnId
    sentObject["sColumnName"]= sColumnTitle
    sentObject["valueOfCell"]=value
    sentObject["Serial"]="serialnumber"
    sentObject["Hourly"]="somevalue"
    $.ajax({
    type: "POST",
    url: "url",
    data: "sentObj="+JSON.stringify(sentObject)
    })
    return value;
  },
  sSuccessResponse: "IGNORE"
 }
);

这就像一个自己定制的ajax更新单元格请求。

我得到了错误:Uncaught TypeError:oTable.fnGetPosition不是一个函数/datatable 1.7/jquery editable 2.3.3