首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UiApp,FlexTable.removeRow()

UiApp,FlexTable.removeRow()
EN

Stack Overflow用户
提问于 2014-09-26 12:29:10
回答 1查看 78关注 0票数 0

我有一个UiApp,它有一个FlexTable,每一行代表一个位置。这些位置由复选框标记,用户选择这些位置,当用户执行保存函数时,我希望更新表,以便只保留选定的行。

代码语言:javascript
复制
...
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)
    }   
  }

这样,我就有了需要删除的行的索引。

代码语言:javascript
复制
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),结果一样。我不喜欢创建新表,而是删除用户没有选择的行。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 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:绿色

用户感到困惑。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26059603

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档