Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.07.2012, 21:04
Профессор
Отправить личное сообщение для Faab Посмотреть профиль Найти все сообщения от Faab
 
Регистрация: 16.04.2012
Сообщений: 310

как передать массив
массив (в примере ниже) можно легко поймать в JQuery
$result[key]="primer0";
$result[meta]="primer1";
$result[title]="primer2";


А вот как работать с таким массивом:
$result[0]="primer0";
$result[1]="primer1";
$result[2]="primer2";



Проблема: раньше в функции ".ajax" я просто присваивал полученные значения уже созданным объектам. А теперь, объекты пока ещё не существуют.

Конечно, всю выборку можно было просто вывести в php через printf(). Но хочу понять основы работы JQuery. Работают ли так в JQuery вообще?
Ответить с цитированием
  #2 (permalink)  
Старый 18.07.2012, 21:45
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Faab
массив (в примере ниже) можно легко поймать в JQuery
что значит "поймать"?
Сообщение от Faab
А вот как работать с таким массивом:
очевидно, что так же, как и с первым. в JS массив от объекта мало чем отличается (внешне)

Сообщение от Faab
Проблема: раньше в функции ".ajax" я просто присваивал полученные значения уже созданным объектам. А теперь, объекты пока ещё не существуют.
желательно пример кода, в котором эта проблема присутствует.

Сообщение от Faab
Конечно, всю выборку можно было просто вывести в php через printf().
выборку чего? Вы же запрос отправляете на сервер, разве нет?
Ответить с цитированием
  #3 (permalink)  
Старый 18.07.2012, 23:13
Профессор
Отправить личное сообщение для Faab Посмотреть профиль Найти все сообщения от Faab
 
Регистрация: 16.04.2012
Сообщений: 310

В php сделана выборка массива, неважно по какому запросу. Запросы могут менятся. Массив будет создаю так:
$les = array();
    $lessen = mysql_query("SELECT title FROM lessen", $db);
    while ($myles = mysql_fetch_array($lessen))
    {
        $les[]=$myles['title'];     
        };
echo json_encode($les);


Созданный массив посылаю обратно JQuery. Первый вопрос, как выбрать из такого массива содержимое. Не буду же я писать следующее:

dataType: "json",
        success: function(data)
           { var title = data}


Сам массив
$result[0]="primer0";
$result[1]="primer1";
$result[2]="primer2";
Ответить с цитированием
  #4 (permalink)  
Старый 19.07.2012, 05:09
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Faab
Созданный массив посылаю обратно JQuery. Первый вопрос, как выбрать из такого массива содержимое. Не буду же я писать следующее:
все верно. в php выводите json_encode'нный массив, а в JQ указываете, что имеете в результате запроса json. дальше используете data, как массив, ибо :
$array = array(1, 2, 3);
echo json_encode(array);
// [ 1, 2, 3 ]

т.е. php выведет массив, а не объект.
дальше он легко превратится в массив:
alert( Object.prototype.toString.call( JSON.parse("[1, 2, 3]") ) );

JSON.parse производится в самой jq при указании того, что пришедшие данные будут в формате json.

Последний раз редактировалось melky, 19.07.2012 в 05:15.
Ответить с цитированием
  #5 (permalink)  
Старый 19.07.2012, 05:19
Профессор
Отправить личное сообщение для Faab Посмотреть профиль Найти все сообщения от Faab
 
Регистрация: 16.04.2012
Сообщений: 310

Спасибо , попробую
Ответить с цитированием
  #6 (permalink)  
Старый 19.07.2012, 14:36
Профессор
Отправить личное сообщение для Faab Посмотреть профиль Найти все сообщения от Faab
 
Регистрация: 16.04.2012
Сообщений: 310

Всё, я туплю... Функция аjax мне возвращает массив в data, я заношу всё это в переменную. И всё! Я не знаю что делать с этим массивом (или объектом). Я не знаю как вытащить нужные мне данные из массива. Я не знаю как присобачить JSONparse.
success: function(data)
                var fin = data

Последний раз редактировалось Faab, 19.07.2012 в 16:15. Причина: неверный код
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать массив из картинок KamalovRadik Firefox/Mozilla 17 04.10.2011 13:06
Массив как часть параметра diprom Javascript под браузер 3 20.09.2011 23:08
Как передать переменную с текстом по событию FRIE jQuery 8 20.04.2010 12:03
Как передать массив данных на сервер DVVID Общие вопросы Javascript 7 08.04.2010 11:11
Как передать массив из PHP в js (AJAX) Александр Иванов Общие вопросы Javascript 7 10.09.2009 09:22