Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » AJAX сформировать data из массива/переменной

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

frb_noname

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго здоровья!
 
Есть работающий код:
 

Код:
 
$.ajax({
                type : "POST",
                url  : "<?php echo site_url('person/update')?>",
                dataType : "JSON",
                data : {id:id , firstname:firstname, lastname:lastname},    
                success: function(data){
                    alert(data);
                    $('[name="id_edit"]').val("");
                    $('[name="firstname_edit"]').val("");
                    $('[name="lastname_edit"]').val("");
                    $('#Modal_Edit').modal('hide');
                    show_product();
                }
            });
            return false;
        });
 

 
Данные для отправки на сервер (data)
Код:
{id:id , firstname:firstname, lastname:lastname}
нужно сформировать на лету - из переменной (строка, массив)  
 
Цель - унифицировать вывод данных, передавая в вид имена полей из контроллера. То есть в теле аякс-запроса в строке data заранее неизвестно количество и имена переменных.
 
Делаю:
 

Код:
 
 
var rrr ="";
 
for (key in tbltd) { // перебор объекта
                 if (tbltd.hasOwnProperty(key)) {  
           
                    rrr += tbltd[key]+':'+tbltd[key]+',';
   
                }  
            }
 
rrr = rrr.substr(0, -1);
 
 
$.ajax({
                type : "POST",
                url  : "<?php echo site_url('person/update')?>",
                dataType : "JSON",
                data : rrr,    
                success: function(data){
                    alert(data);
                    $('[name="id_edit"]').val("");
                    $('[name="firstname_edit"]').val("");
                    $('[name="lastname_edit"]').val("");
                    $('#Modal_Edit').modal('hide');
                    show_product();
                }
            });
            return false;
        });
 
 
 

 
 
Но так не работает.
Где-то торможу в основах - матчасти, но не могу понять.

Всего записей: 47 | Зарегистр. 03-11-2008 | Отправлено: 14:19 31-03-2020 | Исправлено: frb_noname, 14:57 31-03-2020
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
frb_noname
Есть тема же - Вопросы по jQuery
 
Ничего преобразовывать не нужно. Отдайте объект, jQuery сам его упакует.
data : tbltd
 
И {id:id , firstname:firstname, lastname:lastname} и есть объект, а не строка

Всего записей: 15038 | Зарегистр. 20-09-2014 | Отправлено: 15:12 31-03-2020 | Исправлено: Mavrikii, 15:13 31-03-2020
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » AJAX сформировать data из массива/переменной


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru