找回密码
 立即注册

QQ登录

只需一步,快速开始

华盛信息

注册会员

2

主题

10

帖子

20

积分

注册会员

积分
20
最新发帖

[已处理] 关于cell取值

华盛信息
注册会员   /  发表于:2020-10-13 10:55  /   查看:5510  /  回复:15
1金币
cell为空,希望判断cell值为空,sheet.getText(i,0)==""  和 sheet.getValue(i,0) =="" 都达不到效果,如何判断呢
image.png430737914.png

最佳答案

查看完整内容

问题已复现,这边测试了两种情况,一种是导入Excel文件,这种情况下空的cell判断为false这是正常的。 另一种情况就是您说的,复制过去空的cell在有框线的情况下多了一个空格,导致判断为true 第二种情况我们会做进一步调研,有进展将在本贴更新,帖子给您改为保留处理状态。(6094)

15 个回复

倒序浏览
最佳答案
最佳答案
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-13 10:55:38
来自 15#
本帖最后由 DerrickJiao 于 2020-10-14 10:13 编辑
华盛信息 发表于 2020-10-13 14:31
将附件中的表格复制到控件中,然后再getValue(i,0)测试,看为true还是false

问题已复现,这边测试了两种情况,一种是导入Excel文件,这种情况下空的cell判断为false这是正常的。

另一种情况就是您说的,复制过去空的cell在有框线的情况下多了一个空格,导致判断为true

第二种情况我们会做进一步调研,有进展将在本贴更新,帖子给您改为保留处理状态。(6094)
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-13 11:06:02
2#
您好,您可以用sheet.getValue(0,0) == null判断
image.png366929320.png
回复 使用道具 举报
华盛信息
注册会员   /  发表于:2020-10-13 11:16:03
3#
sheet.getValue(i,0) != null 就是判断非空串了?
回复 使用道具 举报
华盛信息
注册会员   /  发表于:2020-10-13 11:20:56
4#
         for(var i=0; i<memNameArr.length;i++){
                 if(sheet.getValue(i,0) != null && sheet.getValue(i,3) != "小组长"){
                         console.log(sheet.getValue(i,0)+"=="+sheet.getValue(i,3));
                         alert("===小组名称、小组长不在同一行  or 小组中没有小组长===");
                         return false;
                 }
         }


image.png83657835.png
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-13 11:22:31
5#
华盛信息 发表于 2020-10-13 11:16
sheet.getValue(i,0) != null 就是判断非空串了?

可以用sheet.getValue(0,0) != null判断非空 image.png162572630.png
回复 使用道具 举报
华盛信息
注册会员   /  发表于:2020-10-13 11:23:42
6#
按你的说法,第二行就不应该进入if(){}中,但目前就是进入了,这种判断不对
回复 使用道具 举报
华盛信息
注册会员   /  发表于:2020-10-13 11:33:28
7#
for(var i=0; i<memNameArr.length;i++){
                 if(sheet.getValue(i,0) != null && sheet.getValue(i,3) != "小组长"){
                         console.log(sheet.getValue(i,0)+"=="+sheet.getValue(i,3));
                         alert("===小组名称、小组长不在同一行  or 小组中没有小组长===");
                         return false;
                 }
         }


请帮解决上述问题
回复 使用道具 举报
华盛信息
注册会员   /  发表于:2020-10-13 11:40:46
8#
console.log((sheet.getValue(i,0) != null));这是我验证的代码,虽然单元格是空,但结果验证结果是true,这是为什么?
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2020-10-13 13:46:10
9#
华盛信息 发表于 2020-10-13 11:40
console.log((sheet.getValue(i,0) != null));这是我验证的代码,虽然单元格是空,但结果验证结果是true, ...

sheet.getValue(i,0) != null这句判断(i,0)这个单元格是否为非空,我这边测试空的单元格是false。

另外您的 if(sheet.getValue(i,0) != null && sheet.getValue(i,3) != "小组长")这句代码在i=0的时候两个条件都为true,则自然进入if里面。

如果还没解决您的问题麻烦您提供一下能复现问题的demo,能有效提高沟通的效率
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部