Как я могу сделать пользовательский сортировку на следующем HTML-таблице, заставляя некоторые ряды всегда кажутся под другими? -- html поле с участием angularjs поле с участием sorting пол Связанный проблема

How can I do a custom sort on the following html table, forcing some rows to always appear beneath others?


1
vote

проблема

русский

У меня есть следующие данные для списка задач:

Введите описание изображения здесь

У меня есть <код> HTML Таблица, отображаемая эти данные, в настоящее время отсортировано по имени задачи (todotask), <код> ascending :

Введите описание изображения здесь

и имя задачи (todotask), <код> descending :

Введите описание изображения здесь

<Код> Child Tasks - это отмечены курсивом, а именно <код> 'A task to derive from' (три раза ребенку) и <код> 'Collect a set of trains' (один раз в детстве). <Код> parent task имеет то же имя, что и <код> child и следующие три факта верны:

1 - <код> salmserna заканчивается <код> 33 (как для ребенка, так и для родителей).

2 - только у ребенка есть <код> ascending0 , и это равна <код> ascending1 .

3 - родительская задача всегда создана перед ребенком.

html:

 <код> ascending2  

Угловой контроллер:

 <код> ascending3  

Приведенные выше вызовы на метода <Код> ascending4 , показано ниже:

 <код> ascending5  

Мне нужны детские задачи, чтобы всегда появиться под родительским, а для сортировки по имени это работает с вышеуказанным кодом, поэтому, когда имена равны, она сортирует по дате начала и игнорирует направление (<код> ascending6 / код>), сохраняя детей под родителями и использовать факт 3 выше.

<Сильная> проблема:

Я действительно изо всех сил пытаюсь понять, как я могу редактировать код, чтобы у вас были удерживаются дети под родителями при сортировке начать или заканчиваться , либо по возрастанию, либо спускаться.

В настоящее время все выглядят так, когда сортировка по <код> ascending7 , возрастанием:

Введите описание изображения здесь

и по убыванию:

Введите описание изображения здесь

Это неудивительно сортировка по дате начала! Я просто не могу поднять голову, как держать детей под родителями, когда сортировка по дате.

в <код> ascending8 Метод, <код> ascending9 - это массив задач, и каждая задача имеет доступные свойства, такие как:

 <код> descending0  

Я полагаю, что факт 2 выше следует учитывать в методе сортировки как-то, но любая помощь была бы здоровой, так как я в порядке, и по-настоящему застрял.

Английский оригинал

I have the following data for a list of tasks:

enter image description here

I have an HTML table displaying this data, currently sorted by task name (todotask), ascending:

enter image description here

and task name (todotask), descending:

enter image description here

Child Tasks are those marked in italics namely 'A task to derive from' (three times a child) and 'Collect a set of trains' (once a child). The parent task has the same name as the child and the following three facts are true:

1 - The salmserna ends in 33 (for both child and parent).

2 - Only a child has a todosernm and that equals the parent's todosern.

3 - The parent task is always created before the child.

HTML:

<th ng-click="sortTasks(tasks, 'todotask', $event)">Task <img id='sortedIcon' src='/static/tasksApp/img/sorting.png' class='pull-right sortingIcon'></th> <th ng-click="sortTasks(tasks, 'todostart', $event)">Start</th> <th ng-click="sortTasks(tasks, 'todoend', $event)">End</th> 

Angular Controller:

$scope.sortTasks = function (sortable, colName, event) {      // Sorting     sortable.sort($scope.sort_by(colName, $scope.sortOrder, function (a) {         if(a != null){           return a.toUpperCase();         }else{           return null;         }     }));      // Sorted icon     $('#sortedIcon').remove();     if ($scope.sortOrder) {         $(event.currentTarget).append("<img id='sortedIcon' src='/static/tasksApp/img/sortingUp.png' class='pull-right sortingIcon'>");     } else {         $(event.currentTarget).append("<img id='sortedIcon' src='/static/tasksApp/img/sorting.png' class='pull-right sortingIcon'>");     }      // Switch next sorting order     $scope.sortOrder = !$scope.sortOrder; }; 

The above calls on the method sort_by, shown below:

/**  * Sorter function  * Can sort both alphabetically and numerically.  */  $scope.sort_by = function (field, rev, primer) {      return function (a, b) {         var nameA = primer(a['todotask']);        var nameB = primer(b['todotask']);        var startA = primer(a['todostart']);        var startB = primer(b['todostart']);        var endA = primer(a['todoend']);        var endB = primer(b['todoend']);         if(nameA == nameB){          return (startA < startB) ? 1 : ((startA > startB) ? -1 : 0);        }else{          a = primer(a[field]);          b = primer(b[field]);          return ((a < b) ? -1 : ((a > b) ? 1 : 0)) * (rev ? -1 : 1);        }      };  };` 

I need the child tasks to ALWAYS appear beneath the parent, and for sorting by name, this works with the above code, so when the names are equal, it sorts by start date and ignores the direction (rev), keeping the children below the parents and making use of fact 3 above.

THE PROBLEM:

I'm really struggling to understand how I can edit the code to ensure the children are kept beneath the parents WHEN SORTING BY START OR END, either ascending or descending.

Currently things look like this when sorting by start, ascending:

enter image description here

and descending:

enter image description here

This is unsurprisingly sorting by start date! I just can't get my head around how to keep the children beneath the parents when sorting by date.

In the sortTasks method, sortable is the array of tasks and each task has the properties available, such as:

task.todostart, task.todoend etc..... 

I suppose fact 2 above should be considered in the sorting method somehow but any help would be great as I'm well and truly stuck.

</div
        

Список ответов

Связанный проблема

-1  Как схватить значение флажки как целое число и не строку? [Дубликат]  ( How to grab checkbox value as integer and not string ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> Этот вопрос уже есть ответы здесь : ...

0  всплывающее окно не назначает центр экрана  ( Popup not assign the center of the screen ) 
У меня есть код ниже, чтобы назначить всплывающую точный центр экрана. Но это не работает. Всплывающее окно появляется в разных местах, основанных на размере ...

0  Как закрыть всплывающее окно, когда видео YouTube играет на кнопке кнопки ESC?  ( How to close popup when youtube video is playing on esc button button ) 
Нажмите меня, чтобы увидеть демонстрацию Когда видео не играет, то кнопка ESC нажала всплывающее окно, но он не работает при воспроизведении видео. ...

6  Как я могу найти неиспользованные CSS в AJAX приложении?  ( How can i find unused css in ajax app ) 
Я искал, и я не могу найти какие-либо дополнения или JavaScript для поиска неиспользованных CSS в приложениях AJAX. Select-Me Selectors Можете сделать са...

0  Как вы используете PHP и SQL для отправки данных таблицы на другую таблицу  ( How do you use php and sql to submit table data to another table ) 
У меня есть таблица полетов, и я использую цикл, чтобы распечатать информацию о рейсах, наряду с кнопкой отправки, кнопка, которая нажала, - это представленны...

0  .append () элемент с более чем одним классом  ( Append element with more than one class ) 
Я не могу найти информацию о том, можно ли использовать .append (), чтобы добавить элемент в HTML и дать этому элементу более одного класса <код> $( ".nav"...

1  Как проверить отметку Check Column в сетке?  ( How to check mark a check column in a grid ) 
У меня есть флажок Check Column на сетке, которая мне нужна для программически проверки. Вот как сценарий Check Column: <код> columns: { items:[ ...

2  SMTPClient отправляет RAW HTML  ( Smtpclient sending raw html ) 
Может ли кто-нибудь сказать мне, почему следующий код отправляет электронные письма в Raw HTML? Как в, электронная почта выглядит когда вы просматриваете исто...

1  JavaScript не работает над динамическим контентом  ( Javascript not working on dynamic content ) 
У меня есть страница, где в HTML Div загружен с другой страницы. На родительской странице у меня есть JavaScript, который имеет элементы, которые применяются ...

-2  Как вы можете центрировать галерею с HTML и CSS  ( How can you center a gallery with html and css ) 
Я выхожу новый HTML и CSS и надеюсь, что кто-то может помочь. с помощью W3 Schools ( http://www.w3schools.com/css/css_image_gallery. ASP ) Я создал простую ...

0  Как сделать левую и правую границу карты в ионном прозрачном  ( How to make the left and right border of a card in ionic transparent ) 
Ниже приведен мой HTML. У меня в общей сложности 3 карты в трех столбцах и хотите только левую и правую сторону быть прозрачными. Я пробовал устанавливать гра...

0  Как я могу отобразить вывод каждого цикла на петле «для»?  ( How can i display the output of each loop on a for loop ) 
Я общий новичок, и я работаю над «простыми числами» рисованием / анимацией с помощью HTML5 Canvas и JS. Мне трудно с помощью петли «Для», потому что браузер о...

4  Как генерировать документ Word (DOC, DOCX) в ASP.NET? [закрыто]  ( How to generate word documentdoc docx in asp net ) 
<в сторону CLASS = "S-NEWACTS S-WELTIVE__info JS-Post-New Imide MB16« Роль = «Статус»> закрыт . Этот вопрос должен быть больше Фокусированный . В настоя...

0  Скачать изображение из результатов API  ( Download image from api results ) 
Я создаю приложение, которое использует онлайн API для рерантива изображений на основе ключевого слова для поиска. Я запускаю петлю Foreach для рендеринга 12 ...

3  Есть ли способ различить связь против мышиных взаимодействий в Windows 8 (HTML / JS)  ( Is there any way to distinguish touch vs mouse interactions in windows 8 html ) 
Я в настоящее время строю приложение, которое имеет много внимания на панорамирование, которое выглядит и чувствует себя красиво, когда касается и манипулируе...

Связанный проблема

-1  Как схватить значение флажки как целое число и не строку? [Дубликат] 
0  всплывающее окно не назначает центр экрана 
0  Как закрыть всплывающее окно, когда видео YouTube играет на кнопке кнопки ESC? 
6  Как я могу найти неиспользованные CSS в AJAX приложении? 
0  Как вы используете PHP и SQL для отправки данных таблицы на другую таблицу 
0  .append () элемент с более чем одним классом 
1  Как проверить отметку Check Column в сетке? 
2  SMTPClient отправляет RAW HTML 
1  JavaScript не работает над динамическим контентом 
-2  Как вы можете центрировать галерею с HTML и CSS 
0  Как сделать левую и правую границу карты в ионном прозрачном 
0  Как я могу отобразить вывод каждого цикла на петле «для»? 
4  Как генерировать документ Word (DOC, DOCX) в ASP.NET? [закрыто] 
0  Скачать изображение из результатов API 
3  Есть ли способ различить связь против мышиных взаимодействий в Windows 8 (HTML / JS) 



© 2021 www.qaru.top All Rights Reserved. Q&A House все права защищены


Licensed under cc by-sa 3.0 with attribution required.