首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当两个字符串匹配特定条件时启用按钮角度7

当两个字符串匹配特定条件时启用按钮角度7
EN

Stack Overflow用户
提问于 2019-02-01 02:34:09
回答 1查看 226关注 0票数 0

我使用的是Angular 7,只要有两个输入不匹配指定的条件,我就想禁用一个按钮。

我有以下代码:

HTML:

代码语言:javascript
复制
<input type="text" pInputText [(ngModel)]="name" placeholder="placeholder"/>
<input type="text" pInputText [(ngModel)]="identifier" placeholder="identifier"/>

<button pButton type="button" class="ui-button-raised ui-button-rounded" label="Click me!" disabled="{{validateIdentifier() && name.length > 0}}"></button>

TS:

代码语言:javascript
复制
 private identifier: string = "";
 private name: string = "";

 validateIdentifier(): boolean {
    const REGEXP = new RegExp(/[EHIS]-[0-9]{9}/);
    return REGEXP.test(this.identifier);
}

因此,当我插入一个匹配以下正则表达式:(E|H|I|S)-[0-9]{9}的字符串,并且插入的name-attribute的长度至少为1时,我希望启用按钮,否则不启用。

遗憾的是,我的按钮在任何输入上都是禁用的(并保持不变)。我在这方面做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-01 02:39:26

我认为你的布尔逻辑有一个小错误。我认为你想要否定validateIdentifier()的结果,如果不是vailidateIdentifier或者长度是0,那么就禁用。例如。

代码语言:javascript
复制
<button
  pButton
  type="button"
  class="ui-button-raised ui-button-rounded"
  label="Click me!"
  [disabled]="!validateIdentifier() || name.length === 0">
</button>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54467148

复制
相关文章

相似问题

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