Форум программистов, компьютерный форум, киберфорум
jQuery
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/6: Рейтинг темы: голосов - 6, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 21
1

Работа с таблицами

16.07.2014, 22:16. Показов 1081. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Помогите с реализацией одной фичи.

Суть: есть html таблицы, в колонках которых имеется время отправления автобусов. Нужно реализовать алгоритм, который будет выводить ближайшие 5рейсов относительно текущего времени.
Получил время, отобрал все элементы из таблиц, а вот дальше возник ступор с реализацией.

P.S.: в имеющемся коде не получается изменять html внутри(каждому элементу, отобранному относительно времени еще нужно будет дописывать информацию о самом автобусе). Помогите пожалуйста

Листинг:
Javascript
1
2
3
4
5
6
7
8
var data= new Date();
var t = $('#top').append(data.toLocaleTimeString());
 
 
var vrem=$('#mid td').text();
for(var i=0; i<vrem.length; i++){
$('#mid').append(vrem[i]);
}
top и mid - это соответственно элементы структуры.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.07.2014, 22:16
Ответы с готовыми решениями:

Работа с таблицами
Всем добрый день) Заранее очень благодарен что вы посетили мою тему, спасибо за внимание Друзья,...

Работа с таблицами
Ребят, подскажите, как можно организовать добавления данных в таблицу(HTML таблицу). Я так понимаю,...

Работа с таблицами
Помогите сделать красивую таблицу. У меня есть код но почему то с моими кривыми руками ничего не...

Работа с таблицами
привет, друзья! подключил файл с кодом: t=document.getElementById('tablica'); k=1;...

5
39 / 39 / 43
Регистрация: 14.07.2014
Сообщений: 230
16.07.2014, 23:57 2
алгоритм, который будет выводить ближайшие 5рейсов относительно текущего времени.
Для такой магии есть плагин tablesorter, после чего сможешь выбрать из отсортированной таблицы необходимые значения. Или же по хардкору - создав массив этих значений создай свою функцию для метода sort.
А вообще желательно выложить и html с данными сюда или туда, я твой вопрос, увы, не понял.
0
Заблокирован
17.07.2014, 00:02 3
Good_God, достаточно понятно обьяснил но помочь даже примерно не знаю как ?
0
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 21
17.07.2014, 10:14  [ТС] 4
Ну вот для примера одна из таблиц. Допустим сейчас 10:00 , мне должно вывестись 13:00, 14:15, 16:00, 17:15 и 18:00.

С плагином tablesorter я не знаком, поэтому не соображу как с его помощью реализовать идею.
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<div id="mid" name="mid">
        
        <div id="t130a" name="t130a">
            <h3>Ейск - п.Братский </h3>
            <h4> Цена проезда - 30р </h4>
            <h5> Время отправления </h5>
            <table id="table130a" rules="all">
                <tr>
                    <th>из Ейск</th><th>из п.Комсомолец</th>
                </tr>
                
                <tr>
                    <td>13:00 </td><td>09:10 </td>
                </tr>
                
                <tr>
                    <td>16:00 </td><td>14:15 </td>
                </tr>
                
                <tr>
                    <td>18:00 </td><td>17:15 </td>
                </tr>
                
                <tr>
                    <td>--:-- </td><td>19:20 </td>
                </tr>
                
            </table>
        </div>
</div>
0
39 / 39 / 43
Регистрация: 14.07.2014
Сообщений: 230
17.07.2014, 11:01 5
Лучший ответ Сообщение было отмечено Good_God как решение

Решение

Держи.
CSS
1
2
3
td{
    border:1px solid black;
}
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//Необходимое время
var iNeedHour=10,iNeedMin=0;
//Необходимое количество записей
var iNeedCount=5;
//Получаем все значения
var tableData=[];
$('#table130a td').each(function(){
    var time=$(this).html();
    //Получив содержимое создаем вложенный массив двух элементов (часы,минуты) и добавляем в основной массив.
    tableData.push(time.split(':'));
});
//Убираем из массива пустые значения и неподходящие значения
for(var i=0;i<tableData.length;i++)
{
    if(tableData[i][0]=='--' || tableData[i][0] < iNeedHour || tableData[i][1] < iNeedMin) 
    {
        tableData.splice(i,1);
    }
}
//Получаем необходимое количество записей. Вдруг их меньше
if (tableData.length < iNeedCount ) iNeedCount=tableData.length
tableData=tableData.splice(0,iNeedCount);
//Вернем время в строковое значение
for(i=0;i<tableData.length;i++) tableData[i]=tableData[i][0]+':'+tableData[i][1];
//Делаем с этим массивом что хотели.
//alert(tableData.join(' '));
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<table id="table130a" rules="all">
<tr>
<td>13:00</td><td>09:10</td>
</tr>
<tr>
<td>16:00</td><td>14:15</td>
</tr>
<tr>
<td>18:00</td><td>17:15</td>
</tr>
<tr>
<td>--:--</td><td>19:20</td>
</tr>
 
</table>
Ссылка.

пс если это единственная задача на странице, я не вижу смысла подключать jquery, хотя не исключаю что есть менее накладный способ вышеописанного
1
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 21
17.07.2014, 20:51  [ТС] 6
Az Rieil, спасибо большое за предложенный вариант)

пс это не единственная задача)
0
17.07.2014, 20:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.07.2014, 20:51
Помогаю со студенческими работами здесь

Работа с 3 таблицами
Есть таблица котов, прививок и третья таблица связей Таблица котов имеет id_cat name_cat и тд ...

Работа с таблицами
Доброго времени суток! Пытаюсь изучать параллельно с C#, SQL. И вот столкнулся с такой задачей:...

Работа с 2 таблицами
Столкнулся с проблемой и не знаю как её решить. У меня есть одна таблица с id и городом и вторая...

Работа с таблицами
Добрый день, уважаемые форумчане:) Столкнулся с задачей, и не получается ее решить, надеюсь на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru