2016-08-24 2 views
0

У меня есть столбец PeriodDate в столбце kendo ui. Я установил тип Date и форматировал сортировку даты кендо, но не работал в fromdate и todate в том же поле.Как отсортировать дату и дату в той же колонке в kendo ui grid

Значение выглядит в этом месяце/формате даты/года enter image description here.

**0:Object 
ExpirePeriod: "06/16/2016 - 06/16/2016" 
1:Object 
CertificatePeriod: "07/16/1991 - 06/16/1992" 
2:Object 
CertificatePeriod: "01/16/1995 - 06/16/2017" 
3:Object 
CertificatePeriod: "01/16/2014 - 06/16/2017"** 
+0

Как являются FromDate и даты Todate хранятся? У них обоих есть свой столбец в базе данных? Почему бы не отобразить два столбца в вашей сетке вместо одного? – Supersnake

+0

fromdate и todate находятся в отдельном столбце, привязывая ui, объединяя два значения в одном столбце с именем Expire Period:, thats the require. есть ли способ? –

ответ

1

Встроенный Кендо UI механизм сортировки может работать только с отдельными скалярными величинами (строки, числа, даты, логические). Сортировка диапазонов дат не определена и не поддерживается, например, неясно, как следует сортировать диапазон дат - по дате начала, по дате окончания или по длительности?

Если вы хотите отсортировать по дате, не добавляйте их в данные, с которыми связана сетка. Используйте два отдельных поля в источнике данных Grid и привяжите столбец к полю, в котором вы хотите сортировать. Вы можете отобразить обе даты в одном столбце с помощью шаблона колонки:

columns: [{ 
    field: "StartDateField", 
    title: "Date Range", 
    template: "#= kendo.toString(StartDateField, 'MM/dd/yyyy') # - #= kendo.toString(EndDateField, 'MM/dd/yyyy') #" 
}] 

Две даты должны быть JavaScript объекты дата, а не строки. Их тип поля данных должен быть установлен в "date" в dataSource.schema.model.fields:

http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-schema.model

В качестве альтернативы, вы можете держать две даты в одном поле данных на стороне клиента и использовать операции на стороне сервера данных для сортировки с помощью серверного кода. Это также позволит вам сортировать по длине диапазона.

http://docs.telerik.com/kendo-ui/api/javascript/data/datasource#configuration-serverSorting

http://docs.telerik.com/kendo-ui/framework/datasource/overview#mixed-data-operations-mode

Смежные вопросы