使用角度表单验证时,仍会提交空表单字段

时间:2013-12-13 06:48:41

标签: angularjs

正确地突出显示验证,但是当我点击提交按钮时,即使是空表单字段,表单仍然被提交(并且缺口值未定义)

我尝试在表单中添加novalidate - 但这没有用。

    <form class="nick" ng-submit="joinChat()">
        <input type="text" required name="nick" ng-model="nick" ng-minlength="2" ng-maxlength="10">
        <button>Join</button>
    </form>

我试图在此处遵循本指南: http://www.ng-newsletter.com/posts/validations.html

joinChat()函数本身不进行任何验证。根据我的理解,在使用Angular表单验证时,这不应该是必要的。

    $scope.joinChat = function(){
        socket.emit('chat:join', { nick: $scope.nick });
    };

1 个答案:

答案 0 :(得分:3)

无效输入不会阻止角度表单提交,而是尝试这样做:

<form class="nick" novalidate ng-submit="joinChat()" name="myform">
    <input type="text" ng-required="true" name="nick" ng-model="nick" ng-minlength="2" ng-maxlength="10">
    <button ng-disabled="myform.$invalid">Join</button>
</form>

Fiddle