Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.08.2011, 19:12
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Многомерный массив как вывести данные на страничку
Получаю данные с сервера (json)
в массив data вот такого вида

{"id":"2","Id_school":"350","id_class":"5v"Id_p":"Русский","date":"08\/20\/2011","nomer_yroka":"1"},


,{"id":"2","Id_school":"350","id_class":"5v"Id_p":"математика","date":"08\/20\/2011","nomer_yroka":"2"},

{"id":"2","Id_school":"350","id_class":"5v"Id_p":",Биология","date":"08\/20\/2011","nomer_yroka":"3"},




делаю цикл
for( var i in data ) {
        for( var k in data[ i ] ) {
            $( "#" + k ).append( data[ i ][ k ] );
}}

засовываю переменные на страничку в div элемент по id =Id_p
и в итоге у меня в id_p
падает
Русский
математика
Биология

как мне разграничить вывод, чтобы в три разных дива засовывались значения предметов
(id_p)
Ответить с цитированием
  #2 (permalink)  
Старый 10.08.2011, 20:22
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

пиши селекторы через запятую
*!*$(..., ..., ...)*/!*.append( data[ i ][ k ] );
Ответить с цитированием
  #3 (permalink)  
Старый 10.08.2011, 20:25
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Сообщение от melky Посмотреть сообщение
пиши селекторы через запятую
*!*$(..., ..., ...)*/!*.append( data[ i ][ k ] );
Селектор то у них один id_p
или я туплю
то есть для каждого аргумента сделать отдельный id и он туда будет по порядку выводить ?

Последний раз редактировалось Sadist_dead, 10.08.2011 в 20:29.
Ответить с цитированием
  #4 (permalink)  
Старый 10.08.2011, 20:35
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

неясно.


for( var i in data ) {
        for( var k in data[ i ] ) {
            $( "#" + k ).append( data[ i ][ k ] );
}}



этот цикл будет проходиться по всему массиву и по каждому элементу массива, т.е. по объекту. потом по каждому свойству объекта будет искаться элемент с таким ИД и туда будет вписываться значение текущего поля.

т.е. этот объект
{"id":"2","Id_school":"350","id_class":"5v", "Id_p":"Русский","date":"08\/20\/2011","nomer_yroka":"1"}

будет искать элемент с ИД "id" и вставлять в него "2", искать "Id_school" и вставлять туда "350".. искать "Id_p" и туда вставлять "Русский".

ясно, к чему я клоню? ошибка в написании кода.

Сообщение от Sadist_dead Посмотреть сообщение
засовываю на страничку в div элемент по id = Id_p
и в итоге у меня в id_p
падает
Русский
математика
Биология
так и будет.

Цитата:
как мне разграничить вывод, чтобы в три разных дива засовывались значения предметов
какие три разных дива ? ( html )
Ответить с цитированием
  #5 (permalink)  
Старый 10.08.2011, 20:56
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Да ты правильно понял
я добился того что у меня в<div id="id_p"></div> падает три значения

Русский
математика
Биология

хорошо,

но я не могу понять как мне сделать правильно выборку из этого массива чтобы
в не выводить все значения в один id_p
а сделать
<div id="хз1" > <div> в этот див падало значение Русский
<div id="хз2" > <div> в этот див падало значение математика
<div id="хз3" > <div> в этот див падало значение биология

ну а совсем фетиш если бы у меня выбиралась если "nomer_yroka":"1" то вставить русский
в див 1
если "nomer_yroka":"2 то вставить математику в див 2"

{"id":"2","Id_school":"350","id_class":"5v"Id_p":"Русский","date":"08\/20\/2011","nomer_yroka":"1"},
 
 
,{"id":"2","Id_school":"350","id_class":"5v"Id_p":"математика","date":"08\/20\/2011","nomer_yroka":"2"},


вот такой страшный объект в первой его части "nomer_yroka":"1" значит в в div 1 надо вывести id_p этого предмета(русский)
во второй части "nomer_yroka":"2 значит в див 2 надо вывести id_p 'этой части и это будет математика" итд

Последний раз редактировалось Sadist_dead, 10.08.2011 в 21:04.
Ответить с цитированием
  #6 (permalink)  
Старый 10.08.2011, 21:17
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Есть мысль на то чтобы как то автоматически присваивать вытащенным id значения
встретилась один раз id_p1 второй раз
id_p2 итд. и в них уже выводить наши предметы

Последний раз редактировалось Sadist_dead, 10.08.2011 в 21:28.
Ответить с цитированием
  #7 (permalink)  
Старый 10.08.2011, 21:51
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

$.each(data, function(index,a){
        alert("Номер : "+ index+"\n\n Язык : "+ a[ "Id_p"]);       
});
Ответить с цитированием
  #8 (permalink)  
Старый 10.08.2011, 22:13
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Спасибо это уже сильно радует
Сообщение от melky Посмотреть сообщение
$.each(data, function(index,a){
        alert("Номер : "+ index+"\n\n Язык : "+ a[ "Id_p"]);       
});
Подскажи пожалуйста какие id у моих дивов
0 1 2
Ответить с цитированием
  #9 (permalink)  
Старый 10.08.2011, 22:15
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от Sadist_dead Посмотреть сообщение
<div id="хз0" > <div> в этот див падало значение Русский
<div id="хз1" > <div> в этот див падало значение математика
<div id="хз2" > <div> в этот див падало значение биология
$("#хз"+index )...
Ответить с цитированием
  #10 (permalink)  
Старый 10.08.2011, 22:36
Аватар для Sadist_dead
Профессор
Отправить личное сообщение для Sadist_dead Посмотреть профиль Найти все сообщения от Sadist_dead
 
Регистрация: 08.08.2011
Сообщений: 191

Спасибо Огромное
success: function(data){
    for( var i in data ) {
        for( var k in data[ i ] ) {
            $( "#" + k ).append( data[ i ][ k ] );
			$.each(data, function(index,a){
    // index -> какой по счету объект в data, a -> data[ index ]
    for(var i in a ) {
        // i -> Id_p, a[ p ] -> qwerty
        if(i === "Id_p"){
			$("#id_p" + index).append(a[i]);
         //  alert("Номер : "+ index+"\n\n Язык : "+ a[i]);
            
        };
    };

все супер к этому иду уже две недели СПАСИБО ОГРОМНОЕ
есть только маленькая мелочь действительно все выводиться по дивом только в повторяется одно и тоже слово 100 раз

Последний раз редактировалось Sadist_dead, 10.08.2011 в 22:46.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сохранить данные в файл? Возможно такое на JavaScript? Forgott Общие вопросы Javascript 35 26.06.2015 19:11
Как вывести на экран значение функции SELECT MAX(id) Владдд Серверные языки и технологии 3 25.01.2009 16:07
Как создать ассоциативный массив JS + CSS occlusion Общие вопросы Javascript 3 12.01.2009 09:19
Как передать массив? remitmaster Общие вопросы Javascript 6 17.09.2008 12:47
XML данные в массив. Onis Общие вопросы Javascript 7 16.07.2008 00:12