使用ng-pattern进行Angularjs表单验证

时间:2018-04-23 12:07:16

标签: angularjs html5 validation ng-messages

我正在使用ng-pattern验证字段,并在使用ng-messages与特定模式不匹配时显示消息。我遇到的问题是表单有一个下一个按钮,该按钮被禁用/启用了ng-diabled“form。$ invalid”,所以当输入无效时,表单无效。

我想要实现的是当ng-pattern不匹配但不将表单设置为无效时显示带有ng-message的消息。基本上我正在尝试提示用户输入的文本可能无效,同时不阻止提交表单。

2 个答案:

答案 0 :(得分:1)

根据我的理解,您正在使用ng-disabled这意味着您希望在表单无效时禁用按钮但是对于某些特定条件,您只想显示错误消息但不会使表单无效

如果是这种情况,只需在控制器中为该ng-model值添加一个观察者,并切换变量以显示或隐藏该错误消息

$scope.$watch('email', function() {
  if (email == 'abx@xyz.com') {
    flag = true;
  }
  else {
    flag = false;
  }
})

请注意,这仅适用于特定情况,避免使用观察者,这会降低您的应用速度

答案 1 :(得分:0)

我想你想要这样。这里,如果十进制值不匹配,则此模式将不允许提交数据。

<div class="bottom-menu-content-container">
    <?php
        $announcementDaoImpl = new AnnouncementDaoImpl($pdo);
        $announcementList = $announcementDaoImpl->getAllAnnouncementByMostRecent();
        foreach($announcementList as $key => $value)
        {
            echo $value->getTitle(); //no need to cast
        }
        ?>
</div>