Хорошо. Это включает как JavaScript, так и скрипт Google Apps. Проблема заключается в javascript.альфа-сортировка массива HTML-ссылок в якорных тегах с использованием javascript
Я создаю список ссылок на файлы в папке Google Drive, используя следующий код:
function doGet(e) {
var template = '<table style =""><tr><th>name</th></tr>APPS_SCRIPT_CONTENT</table>';
var dir = 'MY_FOLDER_ID';
var folder = DriveApp.getFolderById(dir);
var contents = folder.getFiles();
var filelist = [];
var file, name, url = [];
while (contents.hasNext()) {
file = contents.next();
name = file.getName();
url = file.getUrl();
filelist = filelist.concat('<tr><td><a id="' + name + '" href="' + url + '">' + name + '</a></td></tr>');
}
}
Это создает список файлов массив, который я хочу альфа рода. Я хочу сортировать их по имени файла (в ID, чтобы помещать его перед грязной ссылкой google).
filelist.sort();
var output = HtmlService.createHtmlOutput(template.replace('APPS_SCRIPT_CONTENT', filelist));
return output.setTitle('Directory List').setSandboxMode(HtmlService.SandboxMode.IFRAME);
Для четырех файлов образца, я получаю следующий результат:
,,,
name
Sample 2
Zzz file
aaa file
sample 1
Несколько проблем: 1: Они не являются альфа отсортирован. Фактически, они сортируются по последней измененной дате. Если я изменил файл и перезапустил скрипт, измененный файл переместится вверх. 2: Я понятия не имею, откуда взялись три запятой над «именем».
Что я могу сделать дальше?
Отлично! Чувство немного глупое, если не пропустить прописную вещь. – killerbee