Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   тип даты json и массивы (https://javascript.ru/forum/jquery/39183-tip-daty-json-i-massivy.html)

Faab 19.06.2013 13:47

тип даты json и массивы
 
json это {key1: value1, key2: value2 ....} С этим всё понятно.

У меня есть массив:

test[0] = 'a';
test[1] = 'b';
test[2] = 'c';


Если я в ajax укажу

data: {test: test},
dataType: "json",


У меня дойдёт массив или нет до сервера? У меня туда приходит массив с 0 элементами.

zebra 19.06.2013 15:08

Дойдет.

danik.js 19.06.2013 15:55

Цитата:

Сообщение от Faab
У меня дойдёт массив или нет до сервера?

dataType позволяет указать тип данных, которые придут от сервера в ответе. А отсылаемые данные уходят в формате application/x-www-form-urlencoded . PHP воспринимает данные вида test[0]=a&test[1]=b&test[3]=c как массив ($_REQUEST['test'])

Faab 19.06.2013 16:07

Нашёл ошибку перед отправкой массива, отсюда и 0 элементов. А рабочий массив проходит. Спасибо.

Faab 19.06.2013 16:28

Спрошу про возрат. Ситуация когда в php прошли действия но я не ожидаю дату назад. Я возращаю так и так $data['status']=true и пишу в JS проверку так

success: 
      function(data) 
       { 
                if (data) {
                     alert('ok');
                } else {
                    alert('Error: data is not TRUE!!!'); 
                };
            },
            error: function(){alert('fatal error in php')}


Я видел где то как в succes ставят не дату, а состояние операции и даже выводят как то ошибку, которая возникла на сервере, но я так и не смог это применить. Есть у кого нибудь пример такой проверки возрата аякс?

devote 19.06.2013 16:31

Цитата:

Сообщение от Faab
json это {key1: value1, key2: value2 ....}

это не JSON это всего лишь объект JavaScript. А валидный JSON это:
{"key1": value1, "key2": value2 ....}
Где обязательно нужно все ключи обрамлять двойными кавычками.


Часовой пояс GMT +3, время: 15:02.