Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Работа со строками JQuery, работа с объектом Jquery 
:(
    Опции темы
RuslIT
  Дата 21.7.2011, 09:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 21.7.2011

Репутация: нет
Всего: нет



Добрый день уважаемые форумчане
Т.к. я работаю с php+mysql и только приступил к чтению книги "Изучаем JQuery 1.3"
хотел бы спросить:
в топике http://forum.vingrad.ru/topic-309936.html поднимался вопрос о том, как менять местами строки в таблице
CruorVult рассказал о двух способах реализации
Первый способ, когда все делается на стороне клиента
По онклику нужно будет менять order (также в базе $.get запрос - данный навык имеется)
и затем сортировать по порядку и обратно рисовальщику
Допустим, есть объект:
Код

var tableRows = 
{'str1':{'rows':[{'value':'title'},{'value':'url'}],'order':1},
 'str2':{'rows':[{'value':'title2'},{'value':'url2'}],'order':2},
 'str3':{'rows':[{'value':'title3'},{'value':'url3'}],'order':3}};

Не могли бы вы показать функцию рисовальщика, функцию сортировщика

Второй способ
Отправлять get запрос, менять в базе данные, получать их и затем уже отрисовывать таблицу по JSON данным, а не по объекту tableRows

Этот способ также интересен, и хотелось бы увидеть обработку JSON данных с помощью javascript, потому что, столкнувшись с такой проблемой, пришлось на сервере формировать выходные данные, верстку и отдавать просто текст, который помещался в div, что не есть хорошо...

Заранее спасибо!





Это сообщение отредактировал(а) RuslIT - 21.7.2011, 09:36
PM MAIL   Вверх
EmilRegis
Дата 21.7.2011, 10:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 306
Регистрация: 21.9.2007

Репутация: нет
Всего: 4



сортировка:
Код

  function ASort(aInput, name){
      var aTemp = []; // временный массив
      for (var sKey in aInput){
        aTemp.push([sKey, aInput[sKey]]);
      } // ключ и его значение
      aTemp = aTemp.sort(function (){
                           return arguments[0][1][name] - arguments[1][1][name]
                         }); // сортируем временный массив
      var aOutput = []; // это мы вернем
      for (var nIndex = 0; nIndex < aTemp.length; nIndex++) {
        aOutput[aTemp[nIndex][0]] = aTemp[nIndex][1];
      }// собственно создаем выходной массив в нужном порядке
      delete aTemp; // убираем за собой
      delete aInput; // по идее исходный массив тоже нужно удалить, но далеко не всегда. можно вынести за пределы функции, но не забывать там убирать мусор
      return aOutput; 
  }
  var tableRows = {'str1':{'rows':[{'value':'title'},{'value':'url'}],'order':4},
                    'str2':{'rows':[{'value':'title2'},{'value':'url2'}],'order':2},
                    'str3':{'rows':[{'value':'title3'},{'value':'url3'}],'order':3}
                    }
   tableRows = eval(tableRows);
   var SortedHash = ASort(tableRows, 'order');
   for (var key in SortedHash){
     alert(SortedHash[key]['order']);
   }

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.1233 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.