2

我正在关注本教程,特别是在第 2 节中。

这段代码片段给了我问题

function showFolderInSite() {
  var files = DocsList.getFolderById("PASTE_FOLDER_ID_HERE").getFiles();
  var page = SitesApp.getPageByUrl("PASTE_PAGE_URL_HERE");
  var listItems = page.getListItems();
  for(i in listItems){
     listItems[i].deleteListItem();
  }
  for(i in files){
     var title = "<a href=\""+files[i].getUrl()+"\">"+ files[i].getName() +"</a>";
     // Add data according to the order of columns in your list
     page.addListItem([title, files[i].getType(), files[i].getSize(), files[i].getOwner(), files[i].getLastUpdated()]);
 }
}

我遇到的错误是

The anchor tag supplied for the List Item was not properly formed. (line 13)

当我将代码更改为

var title = "<a href=\"File"+i+"\">"+ "DEBUG: File " + i +"</a>";

该脚本运行正常,并且 Google 站点页面上的列表已更新 - 显然名称为“DEBUG”且链接无效。我实际上可以看到正确的类型和所有者,尽管其他列没有。

这里可能是什么问题?

网址是https://sites.google.com/site/startupgaragemalaysia/file-list

4

1 回答 1

0

我复制了你的代码,它在我的环境中运行没有问题。我创建了一个包含 5 列的列表的 Listpage。只需确保您将列表的第一列设置为键入 URL,并将列表的最后一列设置为日期。

-- 更新:我让它在另一个文件夹上运行。该文件夹中包含带有“&”符号和其他一些需要 URL 编码的符号的文件。所以你必须做类似 encodeURIComponent(files[i].getName())

于 2012-10-16T20:29:55.690 回答