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

在angularjs中提交时显示验证错误消息

彭宏义
2023-03-14
问题内容

我有一个表格,如果单击“提交”,则需要显示验证错误消息。

这是一个工作的家伙

 <form name="frmRegister" ng-submit="register();" novalidate>
      <div>
        <input placeholder="First Name" name="first_name" type="text" ng-model="user.firstName" required />
        <span ng-show="frmRegister.first_name.$dirty && frmRegister.first_name.$error.required">First Name is required</span>
      </div>
      <div>
        <input placeholder="Last Name" name="last_name" type="text" ng-model="user.lastName" required />
        <span ng-show="frmRegister.last_name.$dirty && frmRegister.last_name.$error.required">Last Name is required</span>
      </div>
      <div>
        <input placeholder="Email" name="email" type="email" ng-model="user.email" required />
        <span ng-show="frmRegister.email.$dirty && frmRegister.email.$error.required">Email is required.</span>
        <span ng-show="frmRegister.email.$dirty && frmRegister.email.$error.email">Invalid Email address.</span>
      </div>
      <input type="submit" value="Save" />
      <span ng-show="registered">YOU ARE NOW REGISTERED USER</span>
 </form>

用户开始进行更改时,验证工作正常。但是它不会显示任何错误消息。如果单击“提交”而不输入任何内容。

有实现这个的想法吗?或者以其他方式如何在单击“提交”按钮时使每个输入字段$ dirty


问题答案:

我在http://jsfiddle.net/thomporter/ANxmv/2/上找到了这个小提琴,它巧妙地进行了控件验证。

基本上,它声明一个作用域成员,submitted并在单击“提交”时将其设置为true。模型错误绑定使用此额外的表达式来显示错误消息,例如

submitted && form.email.$error.required

更新

正如@Hafez 的评论中所指出的(给他一些赞!),Angular1.3+解决方案很简单:

form.$submitted && form.email.$error.required


 类似资料:
  • 因此,很明显,它识别出输入的名称太短,但我在视图中没有得到任何错误消息,正如这里所预期的:。

  • 我的应用程序中嵌入了swagger ui。当我在本地运行我的节点应用程序时,UI工作得很好。 但是,当我将UI部署到我的“real”服务器时,我会在我的招摇过市UI的右下角看到一个错误图像: 我确信这是我正在做的事情,这会把事情搞砸,但我不知道。当我通过http访问swagger ui时,它也可以在本地工作。 然而,当我部署时,我通过apache运行并通过https提供服务,我看到一个错误。更糟糕

  • 有一张Zend登记表。输入用户名、电子邮件、密码和确认密码。电子邮件验证程序如下所示: 有4个验证器:必需类型、电子邮件格式以及数据库中是否有人具有以下电子邮件。错误消息如下:-需要电子邮件-电子邮件地址格式无效-电子邮件地址已存在 尝试使用ajax捕获错误消息和输出时出现问题。在具有以下功能的RegisterController中: 和jQuery文件: 在控制台我得到了这样的东西https:/

  • @将有效的打印信息发送到控制台,但不发送到页面 当我的字段有错误@Valid print info到控制台时,为什么不在第页? 字段hotelName上的对象formData中的字段错误:拒绝的值[];代码[Size.formData.hotelName, Size.hotelName, Size.java.lang.String, size];参数[org.springframework.con