Прямо сейчас в моем коде у меня есть таблица динамически, а затем пользователь вводит некоторые данные в поле в таблице. Впоследствии я хотел бы предоставить пользователю возможность сортировать список на основе этого поля. То, что я хотел бы сделать, это использовать document.getElementsByClassName, чтобы захватить все поля значений, а затем отсортировать их, но сохранить данные объекта так что-то вроде этого.Сортировка document.getElementsByClassName
var posts = document.getElementsByClassName('data');
posts.values.sort(); // I'd like to sort the array by the value of the html objects
for(i=0;i<posts.length;i++){
//modify table order
}
AFAIK вы не можете использовать 'sort' непосредственно на коллекции йот, вам не нужно сначала преобразовывать его в массив? –
@ Rob M .: Возможно, вы правы, я не очень привык к 'getElementsByClassName' и предположил, что он возвратил массив. Спасибо за отзыв –
@RobM. верно. Вы можете использовать 'Array.prototype.sort.call (posts, function ...)'. Кроме того, 'return a.value.localeCompare (b.value)' является простым однострочным – Phil