Показать сообщение отдельно
  #6 (permalink)  
Старый 29.01.2018, 09:33
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Не знаю какой пример приводить, так как это связка клиент-сервер. Но коли сервер оперировал одной строкой данных, а теперь получит всю выборку, то серверный скрипт придется все равно править. Поэтому можно отослать как есть, и на сервере оперировать именами полей локальной SQL таблицы - keyNumber, itemNumber, curDate, а не knb, inb, cdt.

В этом случае:

db.transaction(function (tx) {
    tx.executeSql("SELECT * FROM items", [], function(tx, results) {                   
        if(results.rows.length > 0) {
            $.ajax({
                //...
                data: 'key='+JSON.stringify(results.rows),
                //...
            })
        }
     });
});


На сервере вся выборка, это json_decode($_POST['key']). Если по каким-то причинам этого не желательно, то:

db.transaction(function (tx) {
    tx.executeSql("SELECT * FROM items", [], function(tx, results) {                   
        if(results.rows.length > 0) {
            
            for(var i=0, rows=[]; i<results.rows.length; i++) rows.push({
                knb:results.rows.item(i).keyNumber, 
                inb:results.rows.item(i).itemNumber, 
                cdt:results.rows.item(i).curDate
            });
            
            $.ajax({
                //...
                data: 'key='+JSON.stringify(rows),
                //...
            })
        }
     });
});


Многое зависит от операций с данными на сервере.

Последний раз редактировалось laimas, 29.01.2018 в 09:54.
Ответить с цитированием