Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/276.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
Javascript 数据表在行上动态更改,但数据对象不更改_Javascript_C#_Jquery_Asp.net Mvc - Fatal编程技术网

Javascript 数据表在行上动态更改,但数据对象不更改

Javascript 数据表在行上动态更改,但数据对象不更改,javascript,c#,jquery,asp.net-mvc,Javascript,C#,Jquery,Asp.net Mvc,我们为我们公司编写了一份报价单,并希望将产品添加到一个数据表中,并在其上更改值。更改数据后,我们发送给控制器,但它们第一次是相同的。下面是数据表结构 var selectedProduct = $('#selectedproduct').DataTable({ "columns": [ { "orderable": false, "data": "I

我们为我们公司编写了一份报价单,并希望将产品添加到一个数据表中,并在其上更改值。更改数据后,我们发送给控制器,但它们第一次是相同的。下面是数据表结构

var selectedProduct = $('#selectedproduct').DataTable({
            "columns": [
                  {
                      "orderable": false,
                      "data": "IsConfirm",
                  },
                 { "orderable": false, "data": "Product.Id" },
                 { "orderable": false, "data": "Product.Name" },
                 { "orderable": false, "data": "Product.Description" },
                 {
                     "orderable": false,
                     "data": "Quantity",
                     "render": function (data, type, full, meta) {
                         return '<td width="100px"><input class="touchspinquantity" type="text" value="' + data + '" name="quantity"></td>';
                     }
                 },
                 { "orderable": false, "data": "Product.SalePrice" },
                 {
                     "orderable": false,
                     "data": "Discount",
                     "render": function (data, type, full, meta) {
                         return '<td width="100px"><input class="touchspindiscount" type="text" value="' + data + '" name="discount"></td>';
                     }
                 },
                 { "orderable": false, "data": "Product.Currency" },
                 { "orderable": false, "data": null, "defaultContent": '' },
                 {
                     "orderable": false,
                     "data": null,
                     "defaultContent": '<button id="deleteproduct" class="btn btn-warning btn-circle" type="button"><i class="fa fa-times"></i></button>'
                 },

            ],
            "createdRow": function (row, data, index) {
                if (data.IsConfirm) {
                    $('td', row).eq(0).html('<input type="checkbox" checked class="i-checks" name="input[]">');
                }
                else {
                    $('td', row).eq(0).html('<input type="checkbox" class="i-checks" name="input[]">');
                }
            },
            "searching": false,
            "paging": false,
            "bInfo": false,
            "ordering": false
        });

更新之后,您可能需要重新绘制datatable

selectedProduct.draw();

我解决了这个问题,但也许这不是个好办法。 这是解决办法

var rows = table.fnGetNodes();
            var arr = [[]];
            for (var i = 0; i < rows.length; i++) {
                var detaildata = [];
                var cells = rows[i].cells;
                detaildata[0] = cells[0].childNodes["0"].checked;
                detaildata[1] = cells[1].innerText;
                detaildata[2] = cells[2].innerText;
                detaildata[3] = cells[3].innerText;
                detaildata[4] = cells[4].firstChild.childNodes[1].value;
                detaildata[5] = cells[5].innerText;
                detaildata[6] = cells[6].firstChild.childNodes[1].value;
                detaildata[7] = cells[7].innerText;
                detaildata[8] = cells[8].innerText;

                arr[[i]] = detaildata;
                //var select = cells[0].children[0].value;
                //if (cells[0].children[0].checked) {
                //    select = cells[0].children[0].value;
                //} else {
                //    select = 'off';
                //}
            }
var rows=table.fnGetNodes();
var-arr=[[]];
对于(变量i=0;i
不工作:(问题是我的发送对象在编辑列后没有改变
var rows = table.fnGetNodes();
            var arr = [[]];
            for (var i = 0; i < rows.length; i++) {
                var detaildata = [];
                var cells = rows[i].cells;
                detaildata[0] = cells[0].childNodes["0"].checked;
                detaildata[1] = cells[1].innerText;
                detaildata[2] = cells[2].innerText;
                detaildata[3] = cells[3].innerText;
                detaildata[4] = cells[4].firstChild.childNodes[1].value;
                detaildata[5] = cells[5].innerText;
                detaildata[6] = cells[6].firstChild.childNodes[1].value;
                detaildata[7] = cells[7].innerText;
                detaildata[8] = cells[8].innerText;

                arr[[i]] = detaildata;
                //var select = cells[0].children[0].value;
                //if (cells[0].children[0].checked) {
                //    select = cells[0].children[0].value;
                //} else {
                //    select = 'off';
                //}
            }