3

我想在 Google Apps 脚本列表框中获取所选项目的索引,而不是所选项目本身。到目前为止,我看到的所有示例都创建了一个服务器处理程序,它通过以下方式获取列表框的值

var list1Value = e.parameter.list1;

我想获得索引,所以我可以索引到一个数组中。我尝试使用此解决方案 http://productforums.google.com/forum/#!category-topic/apps-script/services/vXa57-9T6E4 但我的脚本抱怨 indexOf 无法识别

var currentmonth = months.indexOf(e.parameter.list1);

有人对如何获取索引有一个好主意吗?顺便说一句,这是一个在站点中而不是在电子表格中运行的谷歌应用程序脚本,如果这有所作为的话。

4

1 回答 1

1

另一个答案没有多大意义,因为 Google Apps 脚本是在 Google 的服务器上执行的,而不是在您的浏览器indexOf()中,并且在 GAS 中得到了很好的识别。

您应该将数组与 listBox 的元素一起使用,然后使用listArray.indexOf(listelement);您将获得所选项目的索引。

例子 :

//in the UI construction 

var ItemlistArray = ['item1','item2','item3','item4'];// note that this variable definition could be placed outside of the function so it becomes a global variable...
for (n=0,n<ItemlistArray.length;++n){
ListBox.addItem(ItemlistArray[n]
}

//in the Handler function

var item = e.parameter.listBoxName
var ItemlistArray = ['item1','item2','item3','item4'];// if ItemlistArray is global this line can be removed
var index = ItemlistArray.indexOf(item); // if for example the selected item was 'item3', index will be 2
于 2012-08-04T12:49:37.643 回答