Как отправить все значения сетки на сервер одновременно с помощью jQuery Datatables? - PullRequest
0 голосов
/ 03 марта 2011

Я хочу сохранить все данные из моей сетки на сервере.Я использую плагин Jquery Datatables.

function fnSave() {
    var aTrs = oTable.fnGetNodes();
    var aReturn = new Array();

    for(var i=0;i<aTrs.length;i++) {
        var aData=oTable.fnGetData(i);
        aReturn.push( aData );
    }

    console.log(aReturn);
}

В качестве возврата я получаю:

"<input name="regimentNameAgents" value="" id="regimentNameAgents" type="text">"
...

Я хотел бы только вернуть значения сетки (а не HTML).

При использовании этой функции мое значение всегда равно: value = "", даже если я добавляю текст во входные данные, почему?

Есть ли лучший способ извлечь все данные сетки?

Ответы [ 2 ]

0 голосов
/ 03 марта 2011

Используя datatables fnGetNodes, вот решение:

function fnSave() {

                   var aTrs = oTable.fnGetNodes();
                   var aReturn = new Array();

                   $(aTrs).each(function() {
                      var nextRow = new Array();
                      aReturn.push( nextRow );

                      $("td", this).each(function() {
                      var nextValue = $("input", this).val();
                      nextRow.push(nextValue);
                      });
                    });                  

                 console.log(aReturn);
}
0 голосов
/ 03 марта 2011

Данные, хранящиеся в JDataTable, - это не то, что в настоящее время находится в DOM, а то, с чем вы их изначально установили. Поэтому, когда вы обновляете вход, элемент DOM обновляется, но нет никакой ловушки для обновления данных, хранящихся в jdatatable. Я бы построил сетку примерно так:

var grid = new Array();
$("table tr").each(function() {
    var nextRow = new Array();
    grid.push(nextRow);
    $("td", this).each(function() {
        var nextValue = $("input", this).val();
        nextRow.push(nextValue);
    });
});

Переменная grid должна хранить вашу полную таблицу данных. Я делаю несколько предположений о том, как вы структурировали свою таблицу там, поскольку она не была опубликована, но я предполагаю, что это довольно близко к тому, что у вас есть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...