首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >使用保护检查文本字段的值

使用保护检查文本字段的值
EN

Stack Overflow用户
提问于 2016-12-13 23:39:05
回答 4查看 1.6K关注 0票数 0

我尝试使用一个保护而不是if/else语句来检查我的输入字段是否为空或其中是否包含默认文本。这是我试图使用的防护,但它总是失败,即使文本字段中包含默认文本以外的内容。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
guard (name.text?.isEmpty)!, name.text! == "Add Name" else{
        // call the warning function
        warningMessage()
        return
    }
    print("made it")
    // dismiss the viewcontroller

这就是我将用于if/else语句的内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
     if(personName.text == "" || personName.text == "Add a name"){
         warningMessage()
      }else{
             }
EN

回答 4

Stack Overflow用户

发布于 2016-12-14 00:01:41

您的逻辑是错误的,按照您编写的方式,如果name.text为零,它将崩溃。

你想要这样的东西:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
placeholder = name.placeholder ?? ""
guard let text = name.text,
  !text.isEmpty {
    // call the warning function
    warningMessage()
    return
}
print("made it")

上面写着:

如果name.text为空、为空或包含占位符值,则退出

编辑:

正如@LeoDabus在注释中指出的那样,您应该在文本字段中使用占位符字符串,而不是设置文本值。然后,您不需要与起始文本值进行比较。

票数 0
EN

Stack Overflow用户

发布于 2016-12-14 01:42:28

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
guard let text = name.text, text.isEmpty || text == "Add Name" else {
    if name.text == nil { 
        // input field is empty     
    }
    return
}

// input field is empty or had the default text in it
票数 0
EN

Stack Overflow用户

发布于 2016-12-14 02:12:57

如果您想要确保

  • textfield is
  • 并且warningMessage()包含字符串not empty

你可以写

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
guard name.text?.isEmpty == false, name.text != "Add Name" else {
    warningMessage()
    return
}
print("made it")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41132446

复制
相关文章
双重检查锁为什么要使用volatile字段?
单例模式中,有一个DCL(双重锁)的实现方式。在Java程序中,有时候可能需要推迟一些高开销的对象初始化操作,并且只有在使用这些对象时才开始初始化。
Java_老男孩
2019/12/02
1.3K1
过压保护(2)_过压保护值和欠压保护值
http://www.elecfans.com/dianlutu/protect/2009102499242.html
全栈程序员站长
2022/09/20
1.7K0
过压保护(2)_过压保护值和欠压保护值
使用信号监控 Django 模型对象字段值的变化
Django 信号 (Signals) 的功能类似于 WordPress 的动作 (action),用于为项目全局增加事件的广播 (dispatch) 与接收 (receive) 机制。其中,灵活使用其内置的模型信号 (Model Signals) 的接收功能就可以监控大部分模型对象 (Model instances) 的变化。因为不需要修改模型本身的代码,在进行跨应用 (App) 监控时有低耦合的优势。
BigYoung小站
2020/05/05
1.8K0
MySQL长文本字段的选取
<1>.先将content字段设为varchar(255),则此字段只能最多存储255个字符数
fliter
2023/09/23
2880
MySQL长文本字段的选取
SAP 如何修改字段的文本描述
在实际业务开展中,需要将SAP使用较低或不用的标准字段借用于其它用户,则需要将某个字段的名称描述改成另一个名称描述,例如小编计划把物料主数据的旧物料号字段用于来存放某个关联系统的对应物料号,具体操作步骤如下:
用户5495712
2020/05/13
2.5K0
数据库安全·保护表字段
以下节选择《Netkiller Architect 手札》地址 http://www.netkiller.cn/architect/ 接下来几周的话题是数据库安全。 5.2. 保护表字段 通过触发器,使之无法修改某些字段的数据,同时不影响修改其他字段。 DROP TRIGGER IF EXISTS `members`; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE=''; DELIMITER // CREATE TRIGGER `members` BEFORE UPDATE
netkiller old
2018/03/05
8070
SystemVerilog(五)-文本值
System Verilog 扩展了 Verilog 的 教据类型 , 增强了指定文本值的方法。在介绍文本值之前我们先简单回忆一下HDL中的四个状态数据值。
碎碎思
2022/04/14
1.2K0
SystemVerilog(五)-文本值
1.1、文本插值
Vue 使用一种基于 HTML 的模板语法,使我们能够声明式地将其组件实例的数据绑定到呈现的 DOM 上。所有的 Vue 模板都是语法层面合法的 HTML,可以被符合规范的浏览器和 HTML 解析器解析。
张果
2022/11/12
8.8K0
1.1、文本插值
将数组中空值字段赋默认值!
在上面代码中,首先判断传入的对象是否为数组,如果是数组则对其进行map()操作,否则将其转换成键值对数组并调用 Object.fromEntries() 方法生成一个新的对象。
执行上下文
2023/07/24
2170
将数组中空值字段赋默认值!
【Rust问答】借用值的使用是否会影响借用检查的结果
third 的借用时间持续到你最后一次使用它。第二段代码中在 v.push(6) 之后没有再使用过 third,所以不会报错。详见 Rust 的 NLL 说明: https://doc.rust-lang.org/edition-guide/rust-2018/ownership-and-lifetimes/non-lexical-lifetimes.html
MikeLoveRust
2020/02/27
1K0
django 获取字段选项 choice 的值
由二项元组构成的一个可迭代对象(例如,列表或元组),用来给字段提供选择项。 如果设置了choices ,默认的表单将是一个选择框而不是标准的文本框,而且这个选择框的选项就是choices 中的选项。
卓越笔记
2023/02/18
2.7K0
为字段设置初始值
在开发中为字段设置初始值这是最基本的要求,但是很多开发人员会在构造函数变多的时候忘记给成员变量设置初始值。为了避免这个问题,我们最好在声明的时候直接初始化,而不是在实现构造函数的时候去初始化。编译器会帮助开发人员在每个构造函数开头放入一段代码,这段代码会把开发人员在定义成员字段时所指定的初始值设置给这些成员字段。如果没有显示定义构造函数,那么编译器就会先创建默认构造函数,之后再向其中加入初始化代码。
喵叔
2020/09/08
1.6K0
Serializable接口中serialVersionUID字段值的作用
Java原生序列化 Java类通过实现Serializable接口来实现该类对象的序列化,这个接口非常特殊,没有任何方法,只起标识作用。Java序列化保留了对象类的元数据,如类、成员变量、继承类信息等、以及对象数据等,兼容性最好,但不支持跨语言,而且性能一般。 实现Serializable接口的类建议设值serialVersionUID字段值,如果不设置,那么每次运行时,编译器会根据类的内部实现,包括类名、接口名、方法和属性等来自动生成serialVersionUID。如果类的源代码有修改,那么重新编译后的serialVersionUID的取值可能会发生改变。因此实现Serializable接口的类一定要显示的定义serialVersionUID属性值。修改类的时候需要根据兼容性决定是否修改serialVersionUID属性值。 - 如果是兼容升级,请不要修改serialVersionUID属性值,避免反序列化失败(在反序列化未升级的对象时候) - 如果是不兼容升级,需要修改serialVersionUID属性值,避免反序列化混乱(不修改的话, 有可能将未升级的对象反序列化出来) 使用Java原生序列化需要注意,Java反序列化时,不会调用类的无参构造方法,而是调用native方法将成员变量赋值为对应类型的初始值。基于性能以及兼容性考虑,不推荐使用Java原生序列化。
MickyInvQ
2020/09/27
1K0
mysql中的字段 TEXT类型区别、用于存储比较大文本字段
TEXT :一个BLOB或TEXT列,最大长度为65535(2^16-1)个字符。  
学到老
2019/02/14
5.5K0
使用scikit-learn计算文本TF-IDF值
TF-IDF(Term Frequency-InversDocument Frequency)是一种常用于信息处理和数据挖掘的加权技术。该技术采用一种统计方法,根据字词的在文本中出现的次数和在整个语料中出现的文档频率来计算一个字词在整个语料中的重要程度。它的优点是能过滤掉一些常见的却无关紧要本的词语,同时保留影响整个文本的重要字词。计算方法如下面公式所示。
海天一树
2018/07/25
2.2K0
使用scikit-learn计算文本TF-IDF值
jQuery 文本属性值
​ jQuery的文本属性值常见操作有三种:html() / text() / val() ; 分别对应JS中的 innerHTML 、innerText 和 value 属性。
梨涡浅笑
2022/05/08
3K0
点击加载更多

相似问题

使用ajax检查文本输入字段的值。

40

检查文本字段值长度

73

保护ajax形式的检查元素的值,如何保护?

13

获取受保护字段的值

110

检查文本字段是否为特定值

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文