У меня есть проблема с таблицей начальной загрузки, которую я не могу найти решение.
Я пытаюсь включить сортировку некоторых моих данных, но порядок сортировки неверен, потому что я использую функцию форматирования данных для манипулирования данными перед их отображением в таблице. Таким образом, сортировщик сортируется на основе поля данных, которое подается в функцию форматирования, а не на то, что из него получается. Другими словами, я хочу отсортировать выходные данные функции форматирования данных, а не входные. data-sort-name не поможет, потому что пользовательские данные не входят в число полей data-url, и я не уверен, как реализовать пользовательскую функцию сортировки, потому что она не знает, как получить доступ к манипулируемым данным.
Вот пример. Набор данных, с которым я работаю, имеет коды стран, связанные с определенными учетными записями. Я использую объект JSON для преобразования кодов стран в названия стран. Когда я иду сортировать столбец, он сортируется на основе числового кода страны, а не в алфавитном порядке с использованием названий стран.
Код страны Сортировать изображение
Страна Название Сортировка изображения
<th data-field="Location" data-valign="middle" data-sortable="true" data-formatter="getCountryName">Location</th>
var isoCountries = {
'93' : 'Afghanistan',
'355' : 'Albania',
'213' : 'Algeria',
}
function getCountryName(index,row){
if (isoCountries.hasOwnProperty(row['Location'])) {
return isoCountries[(row['Location'])];
} else {
return row['Location'];
}
}
Если бы кто-нибудь мог указать мне правильное направление, это было бы очень ценно.
Спасибо!