我有一个UiApp,它有一个FlexTable,每一行代表一个位置。这些位置由复选框标记,用户选择这些位置,当用户执行保存函数时,我希望更新表,以便只保留选定的行。
...
var checkbox_sorszam = []
var rows_to_del = []
for(var i = 0; i < locations_data.length; i++)
{
if(e.parameter['checkboxischecked'+i] == 'true')
{
location_list.push(e.parameter['checkbox_value_'+i]);
checkbox_sorszam.push(i)
}
if(e.parameter['checkboxischecked'+i] == 'false')
{
rows_to_del.push(i)
}
}这样,我就有了需要删除的行的索引。
for (var d=0;d<rows_to_del.length;++d)
{
Logger.log(rows_to_del[d])
tarhely_table.removeRow(rows_to_del[d])
}我得到一个“无效值:行”错误。我试过parseInt(rows_to_deld),结果一样。我不喜欢创建新表,而是删除用户没有选择的行。
发布于 2014-09-27 22:35:49
请考虑反向删除行。
假设您的表中最初有3行:
0:红色 1:绿色 2:蓝色
用户选择第1行,因此计划删除行0和2。
第一次通过循环删除行0。现在你的桌子是:
0:绿色 1:蓝色
第二次循环,删除第2行。
没有第二排..。
从重新开始,假设用户选择第2行:蓝色,所以您计划删除0和1。
第一次通过循环删除第0行,现在您的表是:
0:绿色 1:蓝色
第二次通过循环删除第1行,现在您的表是:
0:绿色
用户感到困惑。
https://stackoverflow.com/questions/26059603
复制相似问题