当前位置: 首页 > 面试题库 >

AngularJS-表单自定义验证-检查至少一个输入是否为空

金子平
2023-03-14
问题内容

给定一个简单的html形式,如下所示:

<form name="myForm" action="#sent" method="post" ng-app>
   <input name="userPreference1" type="text" ng-model="shipment.userPreference" />
   <input name="userPreference1" type="text" ng-model="shipment.userPreference" />
   <input name="userPreference1" type="text" ng-model="shipment.userPreference" />
... submit input and all the other code...
</form>

如果至少有一项输入为空,我需要您的帮助来知道如何检查验证时间。所需的验证如下。用户必须至少完成一个首选项。

使用jQuery的这:

if ( $("input").val() == "" ) {

可以,但是想弄清楚如何使用angular来做同样的事情。

非常感谢

吉列尔莫


问题答案:

因此,想法是如果所有输入均为空白,则禁用提交按钮。你可以这样

<form name="myForm" action="#sent" method="post" ng-app>
   <input name="userPreference1" type="text" ng-model="shipment.userPreference1" />
   <input name="userPreference1" type="text" ng-model="shipment.userPreference2" />
   <input name="userPreference1" type="text" ng-model="shipment.userPreference3" />

   <button type="submit" ng-disabled="!(!!shipment.userPreference1 || !!shipment.userPreference2  || !!shipment.userPreference3)">Submit</button>
</form>

!!str是强制转换strboolean值。并且!!null!!""都被评估为false

**[Demo](http://jsfiddle.net/9LVgr/)**



 类似资料:
  • 我有一个表单,其中至少一个输入必须包含数据,因此我使用以下命令禁用提交,直到至少一个输入包含数据: 这是控制器: 问题是,我不能在字段上使用,因为只有一个字段是必需的,因此我从未将类添加到输入中,因此,尽管两个字段都可能为空,并且我有一个禁用的提交按钮,但如果两个字段都为空,我希望添加一个类。 有没有一种方法可以将一个类添加到字段中,如果它们都被触动了,但都是空的?顺便说一句,它们是在页面加载时预

  • 我试图使用Angularjs验证来在列表中至少有一个输入被填写时启用按钮。我所做的工作类似于下面的w3schools示例: 用角验证做这件事的最好方法是什么?

  • 我有这个正则表达式只允许字母数字字符。 如何检查字符串是否至少包含3个字母字符。 我当前的正则表达式, 我想强制执行字符串以确保至少有3个连续的字母字符;

  • 问题内容: 我有一个看起来像这样的表格: 它的设置使得输入数据后所有必填字段和“保存”按钮都可以使用。但是,部分验证是,我将使用输入的数据使用$ http通过POST通过服务器访问服务器。 我应该在函数中放置该逻辑还是有一个更好的放置位置? 更新: * 我实现了以下内容,将其作为元素上的属性应用,但它在每次我不喜欢的按键上调用服务器/数据库: 问题答案: 您不需要在指令中发出$ http请求,更好

  • 问题内容: 一位访问员最近问我这个问题:给定三个布尔变量a,b和c,如果三个变量中至少有两个是true,则返回true。 我的解决方案如下: 他说,这可以进一步改善,但是如何呢? 问题答案: 而不是写: 写: 至于表达式本身,是这样的: 或此(无论您觉得更容易掌握): 它测试和准确一次,最多一次。 参考文献 JLS 15.25条件运算符?:

  • 问题内容: 目前,我正在这样做: 但是我想要一个可以放在简单语句中的表达式。是否有内置的东西可以使这段代码显得不太笨拙? 如果iterable为空,则返回,但如果不是,则可能会遍历所有项目。我只需要检查第一项即可。 有人问我要做什么。我编写了一个函数,该函数执行SQL查询并产生其结果。有时,当我调用此函数时,我只是想知道查询是否返回了任何内容,并据此做出决定。 问题答案: 如果为True,则不会超